最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

你必須了解的三個CSS小技巧

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 18:51:53
文檔

你必須了解的三個CSS小技巧

你必須了解的三個CSS小技巧:各種瀏覽器之間的競爭的白熱化意味著越來越多的人現(xiàn)在開始使用那些支持最新、最先進(jìn)的W3C Web標(biāo)準(zhǔn)的設(shè)備,以一種更具交互性的方式來訪問互聯(lián)網(wǎng)。這意味著我們終于能夠利用更強(qiáng)大更靈活的CSS來創(chuàng)造更簡潔,更好維護(hù)的瀏覽器前端代碼?,F(xiàn)在讓我們來看一看一些也
推薦度:
導(dǎo)讀你必須了解的三個CSS小技巧:各種瀏覽器之間的競爭的白熱化意味著越來越多的人現(xiàn)在開始使用那些支持最新、最先進(jìn)的W3C Web標(biāo)準(zhǔn)的設(shè)備,以一種更具交互性的方式來訪問互聯(lián)網(wǎng)。這意味著我們終于能夠利用更強(qiáng)大更靈活的CSS來創(chuàng)造更簡潔,更好維護(hù)的瀏覽器前端代碼。現(xiàn)在讓我們來看一看一些也

各種瀏覽器之間的競爭的白熱化意味著越來越多的人現(xiàn)在開始使用那些支持最新、最先進(jìn)的W3C Web標(biāo)準(zhǔn)的設(shè)備,以一種更具交互性的方式來訪問互聯(lián)網(wǎng)。這意味著我們終于能夠利用更強(qiáng)大更靈活的CSS來創(chuàng)造更簡潔,更好維護(hù)的瀏覽器前端代碼?,F(xiàn)在讓我們來看一看一些也許你還不知道的讓人興奮的CSS 功能。

在CSS中用attr()顯示HTML屬性值

attr()功能早在CSS 2.1標(biāo)準(zhǔn)中就已經(jīng)出現(xiàn),但現(xiàn)在才開始普遍流行。它提供了一個巧妙的方法在CSS中使用HTML標(biāo)簽上的屬性,在很多情況下都能幫你省去了以往需要Javascript處理的過程。

要想使用這個功能,你需要用到三種元素:一個:before:after CSS偽類樣式, .content屬性,和一個帶有你想使用的HTML屬性名稱的attr()表達(dá)式。例如,想去顯示<h3>標(biāo)題上的data-prefix屬性的值,你可以寫成這樣:

h3:before {
 content: attr(data-prefix) " ";
 }

 <h3 data-prefix="Custom prefix">This is a heading</h3>

顯然,這個例子并沒有展示它有多大用處,只是展示了它的基本用法。讓我們來試一個更有用的例子,attr()的一個極好的應(yīng)用就是當(dāng)用戶打印頁面時將頁面鏈接顯示出來。為了實(shí)現(xiàn)這個,你可以這樣寫:

@media print {
 a:after {
 content: " (link to " attr(href) ") ";
 }
 }

 <a href="example.com">Visit our home page</a>

一旦你知道了這個技巧,你就會吃驚于很多時候它能給你的工作帶來的方便!

提示:在新版的CSS3標(biāo)準(zhǔn)中,attr()功能被擴(kuò)展,可以用在各種CSS標(biāo)記中。在CSS2.1中attr()總是返回一個字符串。在CSS3中attr()可以返回多種不同的類型。

使用counter()在列表中自動添加序號

另外一個在CSS 2.1在就已經(jīng)支持的功能是counter(),使用它,你能方便的在頁面標(biāo)題,區(qū)塊和其它各種連續(xù)出現(xiàn)的頁面內(nèi)容上添加序號。有了它,你就不必限制于只能使用<ol>來實(shí)現(xiàn)這個效果,你可以更靈活的在頁面上使用自定義數(shù)字序列。

counter-reset定義和用法

counter-reset 屬性設(shè)置某個選擇器出現(xiàn)次數(shù)的計(jì)數(shù)器的值。默認(rèn)為 0。

利用這個屬性,計(jì)數(shù)器可以設(shè)置或重置為任何值,可以是正值或負(fù)值。如果沒有提供 number,則默認(rèn)為 0。

注釋:如果使用 "display: none",則無法重置計(jì)數(shù)器。如果使用 "visibility: hidden",則可以重置計(jì)數(shù)器。

注釋:如果已規(guī)定 !DOCTYPE,那么 Internet Explorer 8 (以及更高版本)支持 counter-reset 屬性。

counter-reset可能的值

描述
none默認(rèn)。不能對選擇器的計(jì)數(shù)器進(jìn)行重置。
id number

id 定義重置計(jì)數(shù)器的選擇器、id 或 class。

number 可設(shè)置此選擇器出現(xiàn)次數(shù)的計(jì)數(shù)器的值??梢允钦龜?shù)、零或負(fù)數(shù)。

inherit規(guī)定應(yīng)該從父元素繼承 counter-reset 屬性的值。


關(guān)鍵就是它真的很簡單:在:before偽類里的content屬性加入counter():

body {
 counter-reset: heading;
 }

 h4:before {
 counter-increment: heading;
 content: "Heading #" counter(heading) "."; 
 }

如果你想知道更多關(guān)于這個counter歸零和自增方法的知識,請參考關(guān)于這個主題的Mozilla
Developer Network頁面。里面有個極好的如何使用嵌套counter的例子。

使用calc()做算術(shù)

最后,但不是最不重要的,讓我們來說說calc()功能。calc是英文單詞calculate(計(jì)算)的縮寫,是css3的一個新增的功能,用來指定元素的長度。這個函數(shù)能讓你執(zhí)行簡單的算術(shù)計(jì)算,例如計(jì)算元素的長寬,免去了你寫不易維護(hù)的Javascript代碼。這個函數(shù)支持所有簡單的基本算術(shù)運(yùn)算,包括加減乘除。

表達(dá)式中有“+”和“-”時,其前后必須要有空格,如"widht: calc(12%+5em)"這種沒有空格的寫法是錯誤的;表達(dá)式中有“*”和“/”時,其前后可以沒有空格,但建議留有空格。瀏覽器對calc()的兼容性還算不錯,在IE9+、FF4.0+、Chrome19+、Safari6+都得到較好支持,同樣需要在其前面加上各瀏覽器廠商的識別符,不過可惜的是,移動端的瀏覽器大部分還不支持,目前僅有“firefox for android 14.0”支持。

比方說,你想創(chuàng)建一個元素,使它的寬度占滿它的父元素,但還要留出一部分像素寬做其它用處:

.parent {
 width: 100%;
 border: solid black 1px;
 position: relative;
 }

 .child {
 position: absolute;
 left: 100px;
 width: calc(90% - 100px);
 background-color: #ff8;
 text-align: center;
 }

漂亮吧,不是嗎?

我們可以越來越清楚的發(fā)現(xiàn),CSS已經(jīng)成熟到在某些方法可以替代javascript,極大的簡化了web開發(fā)人員的工作。如果你還不開始利用這些功能,那只能說是在犯傻。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

你必須了解的三個CSS小技巧

你必須了解的三個CSS小技巧:各種瀏覽器之間的競爭的白熱化意味著越來越多的人現(xiàn)在開始使用那些支持最新、最先進(jìn)的W3C Web標(biāo)準(zhǔn)的設(shè)備,以一種更具交互性的方式來訪問互聯(lián)網(wǎng)。這意味著我們終于能夠利用更強(qiáng)大更靈活的CSS來創(chuàng)造更簡潔,更好維護(hù)的瀏覽器前端代碼。現(xiàn)在讓我們來看一看一些也
推薦度:
標(biāo)簽: 知道 小技巧 使用
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top