css選擇器使用圖解,css三種選擇器的特點?
css選擇器的類型分為3類:標(biāo)記選擇器、類別選擇器和ID選擇器。
(可能名稱有不同的說法,但意思都是一樣的) 標(biāo)記選擇器是利用HTML的標(biāo)記直接定義標(biāo)記內(nèi)容的樣式,如:h1{ color:red; font-size:25pt;} 類別選擇器是通常說的class選擇器,定義的時候要在名稱前加.如:.one{ color:red; font-size:25pt;} ID選擇器定義的時候要在前面加#,如:#box { color:red; font-size:25pt;} 利用DW寫CSS的時候,高級就是上面說的ID選擇器,ID選擇器的名字可以任意命名,可以自己定義,可是標(biāo)簽就只能是HTML語言里制定的那些標(biāo)記,不能自己定義。DW中常用css樣式四種類型詳細(xì)解析說明?
1、外部樣式
格式:<link type="text/css" rel="stylesheet" href="css路徑" />
舉例:<link type="text/css" rel="stylesheet" href="layout.css"/>
用處:這種形式是把css單獨(dú)寫到一個css文件內(nèi),然后在源代碼中以link方式鏈接。它的好處是不但本頁可以調(diào)用,其它頁面也可以調(diào)用,是最常用的一種形式。
備注:Rel:指明連接的是什么文件; Type:指明引入的文件的格式類型; Href:指明文件的路徑,以引入文件為基準(zhǔn)的相對路徑。
2、內(nèi)部樣式
格式: <style type="text/css">選擇器 {聲明1、聲明2………}</style>
這樣的話,該文件中的所有P標(biāo)簽都將應(yīng)用該style樣式,而不需要在沒一個html標(biāo)簽中寫。
用處:這種形式是內(nèi)部樣式表,它是以<style>和</style>結(jié)尾,寫在源代碼的head標(biāo)簽內(nèi)。這樣的樣式表只能針對本頁有效。不能作用于其它頁面
3、舉例:
<html>
<head>
<title></title>
<style>
P{
font-size:50px;
color:red;
text-deceration:line
}
</style>
</head>
<body>
</body>
</html>
4、行內(nèi)樣式:就是直接在html標(biāo)簽后面寫樣式代碼
<p style=”font-size:50px;color:red;text-deceration:line”>啊啊啊啊</p>
用處:這種在標(biāo)簽內(nèi)以style標(biāo)記的為內(nèi)部樣式,內(nèi)部樣式只針對標(biāo)簽內(nèi)的元素有效,因其沒有和內(nèi)容相分離,所以不建議使用。
5、導(dǎo)入樣式
@import url("/css/global.css");
鏈接樣式是以@import url標(biāo)記所鏈接的外部樣式表,它一般常用在另一個樣式表內(nèi)部。如layout.css為主頁所用樣式,那么我們可以把全局都需要用的公共樣式放到一個 global.css的文件中,然后在layout.css中以@import url("/css/global.css")的形式鏈接全局樣式,這樣就使代碼達(dá)到很好的重用性。
6、CSS 規(guī)則由兩個主要的部分構(gòu)成:選擇器,以及一條或多條聲明。
selector {declaration1; declaration2; ... declarationN }
選擇器通常是您需要改變樣式的 HTML 元素。
每條聲明由一個屬性和一個值組成。
屬性(property)是您希望設(shè)置的樣式屬性(style attribute)。每個屬性有一個值。屬性和值被冒號分開。
selector {property: value}
下面這行代碼的作用是將 h1 元素內(nèi)的文字顏色定義為紅色,同時將字體大小設(shè)置為 14 像素。
在這個例子中,h1 是選擇器,color 和 font-size 是屬性,red 和 14px 是值。
h1 {color:red; font-size:14px;}
提示:請使用花括號來包圍聲明。
postcss和cssmodule是什么?
postcss是什么?
根據(jù)官網(wǎng)的解釋,它是一種javascript編寫的工具,用來轉(zhuǎn)化css的??梢哉J(rèn)為它是處理css的插件集合,需要配合諸如webpack、gulp等編譯工具才能展現(xiàn)它強(qiáng)大的能力。
目前社區(qū)提供了非常多的插件,比較有名的如下:
autoprefixer 可以為css的屬性配置兼容性的前綴,不需要手動添加postcss-preset-env 允許你使用更加現(xiàn)代的css特性stylelint 檢查css語法錯誤cssnano css的壓縮器等等postcss的原理如果大家了解babel的原理,那就應(yīng)該聽說過AST即抽象語法樹。編譯器將字符串進(jìn)行詞法分析、語法分析,再做轉(zhuǎn)換,最終達(dá)到預(yù)期的結(jié)果。postcss也是同樣的原理,這個包已經(jīng)為使用者提供了解析的方法parse,并且也提供了很多轉(zhuǎn)化的API,利用這些就可以自己開發(fā)一款postcss插件了。
css Module是什么?先前呢,我們使用css選擇器,它是對整個頁面是有效的,也就是全局的,當(dāng)你每次迭代需求的時候,需要考慮每次添加新的css是否會影響到其他地方,所以我們有時選擇為樣式表添加命名空間。css Module為我們提供了另外一種開發(fā)方式,它可以使css具有局部作用域。
用法如下:
用法是如此的簡單,基本一看就會,css-loader為我們提供了css Module的開關(guān),只要為css-loader添加參數(shù)選項modules就可以開啟。注意:它必須放在less或者sass的loader之前。
那它如何做到局部作用域的呢?
打開element面板可以發(fā)現(xiàn),它把class變成了md5戳,對應(yīng)每個組件,保持唯一。
vue的scoped由此我們聯(lián)想到vue的scoped,它也解決了css局部作用域的問題!
它在dom上生成了一個data屬性,并且給class選擇器添加了屬性選擇器,類似于之前的md5戳。不過由于添加了屬性選擇器,使得選擇器的優(yōu)先級變高了,想在組件外面覆蓋css屬性就變得不那么容易了!
喜歡我的回答就關(guān)注我吧,有問題可以發(fā)表評論,我們一起學(xué)習(xí),共同成長!
css選擇器項目符號圖像是什么?
css樣式屬性list-style-image :設(shè)定列表項目符號的自定義圖像。其值是一個引用圖像的URL路徑。
url ( url ) —— 使用絕對或相對 url 地址指定圖像。