css中各種選擇器的優先級,css中px和em有什么區別?
px特點
1. IE無法調整那些使用px作為單位的字體大小;
2. 國外的大部分網站能夠調整的原因在于其使用了em或rem作為字體單位;
3. Firefox能夠調整px和em,rem,但是96%以上的中國網民使用IE瀏覽器(或內核)。
px像素(Pixel)。相對長度單位。像素px是相對于顯示器屏幕分辨率而言的。(引自CSS2.0手冊)
em是相對長度單位。相對于當前對象內文本的字體尺寸。如當前對行內文本的字體尺寸未被人為設置,則相對于瀏覽器的默認字體尺寸。(引自CSS2.0手冊)
任意瀏覽器的默認字體高都是16px。所有未經調整的瀏覽器都符合: 1em=16px。那么12px=0.75em,10px=0.625em。為了簡化font-size的換算,需要在css中的body選擇器中聲明Font-size=62.5%,這就使em值變為 16px*62.5%=10px, 這樣12px=1.2em, 10px=1em, 也就是說只需要將你的原來的px數值除以10,然后換上em作為單位就行了。
em特點
1. em的值并不是固定的;
2. em會繼承父級元素的字體大小。
所以我們在寫CSS的時候,需要注意兩點:
1. body選擇器中聲明Font-size=62.5%;
2. 將你的原來的px數值除以10,然后換上em作為單位;
3. 重新計算那些被放大的字體的em數值。避免字體大小的重復聲明。
也就是避免1.2 * 1.2= 1.44的現象。比如說你在#content中聲明了字體大小為1.2em,那么在聲明p的字體大小時就只能是1em,而不是1.2em, 因為此em非彼em,它因繼承#content的字體高而變為了1em=12px。
計算公式:1 ÷ 父元素的font-size × 需要轉換的像素值 = em值
rem特點
rem是CSS3新增的一個相對單位(root em,根em),這個單位引起了廣泛關注。這個單位與em有什么區別呢?區別在于使用rem為元素設定字體大小時,仍然是相對大小,但相對的只是HTML根元素。這個單位可謂集相對大小和絕對大小的優點于一身,通過它既可以做到只修改根元素就成比例地調整所有字體大小,又可以避免字體大小逐層復合的連鎖反應。目前,除了IE8及更早版本外,所有瀏覽器均已支持rem。對于不支持它的瀏覽器,應對方法也很簡單,就是多寫一個絕對單位的聲明。這些瀏覽器會忽略用rem設定的字體大小。你是想了解相關知識嗎?建議去優就業了解相關課程
css選擇器識別范圍?
css選擇器優先級核心:每個選擇器本身有優先級,作用范圍越具體優先級越高。
CSS優先級從高到低分別是:
1.在屬性后面使用 !important 會覆蓋頁面內任何位置定義的元素樣式。
2.作為style屬性寫在元素標簽上的內聯樣式
3.id選擇器
4.類選擇器
5.偽類選擇器
6.屬性選擇器
7.標簽選擇器
8.通配符選擇器
9.瀏覽器選擇器
當CSS樣式的規則由多個選擇器組成時,id選擇器的權值為1000,class選擇器為100,標簽選擇器為10,按權值求和的記過高低決定哪個優先。當兩個css規則的權值相同時,誰更具體用誰,也就是權值高的選擇器作用的越具體優先級越高。當兩個選擇器規則和權值都是一樣,后面樣式會覆蓋前面的!
四路選擇器功能表?
四路選擇器簡介:要使用css對HTML頁面中的元素實現一對一,一對多或者多對一的控制,這就需要用到CSS選擇器。
HTML頁面中的元素就是通過CSS選擇器進行控制的。
1.1 類別選擇器
類選擇器根據類名來選擇
前面以”.”來標志,如:
.demoDiv{
color:#FF0000;
}
在HTML中,元素可以定義一個class的屬性。
如:
<div class="demoDiv">
這個區域字體顏色為紅色
</div>
同時,我們可以再定義一個元素:
<p class="demoDiv">
這個段落字體顏色為紅色
</p>
最后,用瀏覽器瀏覽,我們可以發現所有class為demoDiv的元素都應用了這個樣式。包括了頁面中的div元素和p元素。
上例我們給兩個元素都定義了class,但如果有很多個元素都會應用這個元素,那得一個個的定義元素,就會造成頁面重復的代碼太多,這種現象稱為“多類癥”。
我們可以改成這樣來定義。
<div class="demoDiv">
<div>
這個區域字體顏色為紅色
</div>
同時,我們可以再定義一個元素:
<p>
這個段落字體顏色為紅色
</p>
</div>
這樣,我們就只是定義了一個類,同時把樣式應用到了所有的元素當中。
1.2 標簽選擇器
一個完整的HTML頁面是有很多不同的標簽組成,而標簽選擇器,則是決定哪些標簽
采用相應的CSS樣式,(在大環境中你可能出于不同的位置,但是不管怎么樣,你總
是穿著同一套衣服,這件衣服就是由標簽選擇器事先給你限定好的,不管走到哪里
都是這身衣服)比如,在style.css文件中對p標簽樣式的聲明如下:
p{
font-size:12px;
background:#900;
color:090;
}
復制代碼則頁面中所有p標簽的背景都是#900(紅色),文字大小均是12px,顏色為#090(綠色)
,這在后期維護中,如果想改變整個網站中p標簽背景的顏色,只需要修改
background屬性就可以了,就這么容易!
1.3 ID選擇器
根據元素ID來選擇元素,具有唯一性。
前面以”#”號來標志,在樣式里面可以這樣定義:
#demoDiv{
color:#FF0000;
}
這里代表id為demoDiv的元素的設置它的字體顏色為紅色。
我們在頁面上定義一個元素把它的ID定義為demoDiv,如:
<div id="demoDiv">
這個區域字體顏色為紅色
</div>
用瀏覽器瀏覽,我們可以看到因為區域內的顏色變成了紅色
再定義一個區域
<div>
這個區域沒有定義顏色
</div>
用瀏覽器瀏覽,與預期的一樣,區域沒有應用樣式,所以區域中的字體顏色還是默認的顏色黑色。
1.4 后代選擇器
后代選擇器也稱為包含選擇器,用來選擇特定元素或元素組的后代,后代選擇器用兩個常用選擇器,中間加一個空格表示。其中前面的常用選擇器選擇父元素,后面的常用選擇器選擇子元素,樣式最終會應用于子元素中。
如:
<style>
.father.child{
color:#0000CC;
}
</style>
<p class="father">
黑色
<label class="child">藍色
<b>也是藍色</b>
</label>
</p>
這里我們定義了所有class屬性為father的元素下面的class屬性為child的顏色為藍色。
后代選擇器是一種很有用的選擇器,使用后代選擇器可以更加精確的定位元素。
css三種選擇器的特點?
css選擇器的類型分為3類:標記選擇器、類別選擇器和ID選擇器。
(可能名稱有不同的說法,但意思都是一樣的) 標記選擇器是利用HTML的標記直接定義標記內容的樣式,如:h1{ color:red; font-size:25pt;} 類別選擇器是通常說的class選擇器,定義的時候要在名稱前加.如:.one{ color:red; font-size:25pt;} ID選擇器定義的時候要在前面加#,如:#box { color:red; font-size:25pt;} 利用DW寫CSS的時候,高級就是上面說的ID選擇器,ID選擇器的名字可以任意命名,可以自己定義,可是標簽就只能是HTML語言里制定的那些標記,不能自己定義。