css中的選擇器的優(yōu)先級,css外鏈?zhǔn)脚c內(nèi)嵌式優(yōu)先級?
從CSS 樣式代碼插入的形式來看基本可以分為以下3種:內(nèi)聯(lián)式、嵌入式和外部式三種。
1:內(nèi)聯(lián)式css樣式表就是把css代碼直接寫在現(xiàn)有的HTML標(biāo)簽中,如下面代碼:
<p style="color:red";font-size:12px>這里文字是紅色。</p>2:嵌入式,嵌入式css樣式,就是可以把css樣式代碼寫在 <style type="text/css">XXX</style>標(biāo)簽之間。
3:外部式css樣式,寫在單獨的一個文件中.
外部式css樣式(也可稱為外聯(lián)式)就是把css代碼寫一個單獨的外部文件中,這個css樣式文件以“.css”為擴展名,在<head>內(nèi)(不是在<style>標(biāo)簽內(nèi))使用<link>標(biāo)簽將css樣式文件鏈接到HTML文件內(nèi),如下面代碼:
<link href="base.css" rel="stylesheet" type="text/css" />
優(yōu)先級: 內(nèi)聯(lián)式 > 嵌入式 > 外部式,但是 嵌入式> 外部式有一個前提:嵌入式css樣式的位置一定在外部式的后面。
其實總結(jié)來說,就是--就近原則(離被設(shè)置元素越近優(yōu)先級別越高)。
什么是派生選擇器?
通過依據(jù)元素在其位置的上下文關(guān)系來定義樣式 比如 div span{color:red;} 如果之前有定義 span{color:blue;}那么 派生選擇器就是 不需要再去設(shè)置一個class 使用上下文關(guān)系來定義你需要的樣式比如這里 需要變成紅色 比單個span具有更高優(yōu)先級 這樣可以讓html代碼更加簡潔 id 選擇器具有更高的優(yōu)先級
為什么我在idea里面改了css樣式網(wǎng)頁不變?
第一,可能你沒引用該css第二,可能你選擇器的優(yōu)先級不夠第三,可能被后面的css覆蓋掉了第四,可能是js動態(tài)改變了該css第五,你沒有進行底層刷新清除緩存樣式
CSS的基本特征?
總體來說,CSS具有以下特點:
1.豐富的樣式定義
CSS提供了豐富的文檔樣式外觀,以及設(shè)置文本和背景屬性的能力;允許為任何元素創(chuàng)建邊框,以及元素邊框與其他元素間的距離,以及元素邊框與元素內(nèi)容間的距離;允許隨意改變文本的大小寫方式、修飾方式以及其他頁面效果。
2.易于使用和修改
CSS可以將樣式定義在HTML元素的style屬性中,也可以將其定義在HTML文檔的header部分,也可以將樣式聲明在一個專門的CSS文件中,以供HTML頁面引用。總之,CSS樣式表可以將所有的樣式聲明統(tǒng)一存放,進行統(tǒng)一管理。
另外,可以將相同樣式的元素進行歸類,使用同一個樣式進行定義,也可以將某個樣式應(yīng)用到所有同名的HTML標(biāo)簽中,也可以將一個CSS樣式指定到某個頁面元素中。如果要修改樣式,我們只需要在樣式列表中找到相應(yīng)的樣式聲明進行修改。
3.多頁面應(yīng)用
CSS樣式表可以單獨存放在一個CSS文件中,這樣我們就可以在多個頁面中使用同一個CSS樣式表。CSS樣式表理論上不屬于任何頁面文件,在任何頁面文件中都可以將其引用。這樣就可以實現(xiàn)多個頁面風(fēng)格的統(tǒng)一。
4.層疊
簡單的說,層疊就是對一個元素多次設(shè)置同一個樣式,這將使用最后一次設(shè)置的屬性值。例如對一個站點中的多個頁面使用了同一套CSS樣式表,而某些頁面中的某些元素想使用其他樣式,就可以針對這些樣式單獨定義一個樣式表應(yīng)用到頁面中。這些后來定義的樣式將對前面的樣式設(shè)置進行重寫,在瀏覽器中看到的將是最后面設(shè)置的樣式效果。
5.頁面壓縮
在使用HTML定義頁面效果的網(wǎng)站中,往往需要大量或重復(fù)的表格和font元素形成各種規(guī)格的文字樣式,這樣做的后果就是會產(chǎn)生大量的HTML標(biāo)簽,從而使頁面文件的大小增加。而將樣式的聲明單獨放到CSS樣式表中,可以大大的減小頁面的體積,這樣在加載頁面時使用的時間也會大大的減少。另外,CSS樣式表的復(fù)用更大程度的縮減了頁面的體積,減少下載的時間。