1、 css選擇器中為什么要用空格,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語言里制定的那些標記,不能自己定義。2、 CSS屬性與值的定義?
cascading style sheet 層疊樣式表
CSS基本語法
css的定義方法是:
選擇器 { 屬性:值; 屬性:值; 屬性:值;}
選擇器是將樣式和頁面元素關聯起來的名稱,屬性是希望設置的樣式屬性每個屬性有一個或多個值,如果一個屬性有多個值,中間用空格隔開
代碼示例:
div{ width:100px; height:100px; color:red }
用處:設置網頁的顯示效果(設置樣式)
css將網頁的顯示效果和內容分離(降低了耦合性)
3、 postcss和cssmodule是什么?
postcss是什么?
根據官網的解釋,它是一種javascript編寫的工具,用來轉化css的。可以認為它是處理css的插件集合,需要配合諸如webpack、gulp等編譯工具才能展現它強大的能力。
目前社區提供了非常多的插件,比較有名的如下:
autoprefixer 可以為css的屬性配置兼容性的前綴,不需要手動添加postcss-preset-env 允許你使用更加現代的css特性stylelint 檢查css語法錯誤cssnano css的壓縮器等等postcss的原理如果大家了解babel的原理,那就應該聽說過AST即抽象語法樹。編譯器將字符串進行詞法分析、語法分析,再做轉換,最終達到預期的結果。postcss也是同樣的原理,這個包已經為使用者提供了解析的方法parse,并且也提供了很多轉化的API,利用這些就可以自己開發一款postcss插件了。
css Module是什么?先前呢,我們使用css選擇器,它是對整個頁面是有效的,也就是全局的,當你每次迭代需求的時候,需要考慮每次添加新的css是否會影響到其他地方,所以我們有時選擇為樣式表添加命名空間。css Module為我們提供了另外一種開發方式,它可以使css具有局部作用域。
用法如下:
用法是如此的簡單,基本一看就會,css-loader為我們提供了css Module的開關,只要為css-loader添加參數選項modules就可以開啟。注意:它必須放在less或者sass的loader之前。
那它如何做到局部作用域的呢?
打開element面板可以發現,它把class變成了md5戳,對應每個組件,保持唯一。
vue的scoped由此我們聯想到vue的scoped,它也解決了css局部作用域的問題!
它在dom上生成了一個data屬性,并且給class選擇器添加了屬性選擇器,類似于之前的md5戳。不過由于添加了屬性選擇器,使得選擇器的優先級變高了,想在組件外面覆蓋css屬性就變得不那么容易了!
喜歡我的回答就關注我吧,有問題可以發表評論,我們一起學習,共同成長!
4、 和css中的選擇器有什么區別?
這個是有區別的。
1、首先說兩者是屬于不同的兩門語言,jquery是屬于js的一個框架,則其選擇器是js里面的選擇器,css是另一門不同于js的語言,其選擇器是css選擇器,則兩者在根本上是不同的。
2、但是兩者是有交集的,都是作為網頁或者瀏覽器解析的語言,而js可以通過修改瀏覽器的dom對象來實現對css修改或者是控制。
3、可以簡單的這樣區分兩者,css選擇器用語css當中,js選擇器應用于js當中,只不過有時兩者使用相同的id標識來選擇對象。