p #second span{color:purple;}為什么不生效而p#second span{color:purple;}可以生效
<!DOCTYPE?html>
<html>
<head>
<meta?charset="UTF-8">
<title>特殊性</title>
<style?type="text/css">
????p{color:red;}.first{color:green;}/*因為權值高顯示為綠色*/
????span{color:pink;}/*設置為粉色*/
????p?#second?span{color:purple;}
</style>
</head>
<body>
????<h1>勇氣</h1>????
????<p?class="first">三年級時,我還是一個<span>膽小如鼠</span>的小女孩,上課從來不敢回答老師提出的問題,生怕回答錯了老師會批評我。就一直沒有這個勇氣來回答老師提出的問題。學校舉辦的活動我也沒勇氣參加。</p>
????<p?id="second">到了三年級下學期時,我們班上了一節公開課,老師提出了一個很<span>簡單</span>的問題,班里很多同學都舉手了,甚至成績比我差很多的,也舉手了,還說著:"我來,我來。"我環顧了四周,就我沒有舉手。</p>
</body>
</html>想要把第一個span設置為粉色,第二個標簽設置為紫色,這樣為什么不生效?去掉空格變成
p#second?span{color:purple;}就可以了,兩個選擇器之間不用加空格么?
另外參考這個問題:http://www.xianlaiwan.cn/qadetail/350589
這個問題里面設置
.first#ha{color:purple;}并不生效,而要加空格變成
.first?#ha{color:purple;}才能生效,這又是為什么?
2021-02-24
加上空格表示.first的所有#ha子代;不加空格表示的是first#ha類,first#ha是一個整體
2021-02-24
p #second 是在p標簽里面找id為second的標簽,p#second 是找id為second的p標簽