[翻譯]CSS變量讓你輕松制作響應(yīng)式網(wǎng)頁

前言:這是一篇轉(zhuǎn)載文,確實(shí)寫的不錯(cuò),今天分享給大家,希望大家能集百家之長,學(xué)到更多有用的知識~

摘要:這是一篇2018年制作響應(yīng)性網(wǎng)頁的快速教程。


如果你之前沒有聽說過CSS變量,那么現(xiàn)在我將告訴你:它是CSS的新特性,讓你能夠在樣式表中使用變量的能力,并且無需任何配置。

實(shí)際上,CSS變量能夠讓你改變以往設(shè)置樣式的老方法:


而使用了CSS變量之后:

這樣的詞法有點(diǎn)奇怪,但它確實(shí)能夠讓你通過僅改變--base-font-size的值來改變app中所有原生的字體大小。

如果你想要學(xué)習(xí)CSS變量的知識,可以登錄Scrimba看我的視頻課程,或是閱讀我在Medium上寫的文章:如何學(xué)習(xí)CSS變量。

好了,現(xiàn)在讓我們看看如何使用這個(gè)新知識來更加簡單地制作響應(yīng)式站點(diǎn)吧。

初始配置

讓我們來把下面這個(gè)頁面變成響應(yīng)式的吧:

這個(gè)頁面在PC端看上去很不錯(cuò),不過你可以看到它在移動(dòng)端的表現(xiàn)并不好。就像下面這樣:

在下面這張圖中,我們在樣式上做了一些改進(jìn),讓它看起來更好一點(diǎn):

重新排列整個(gè)網(wǎng)格布局,使用垂直排列取代固定兩列布局。

將框架整體上移了一點(diǎn)。

對字體進(jìn)行了縮放。

目光轉(zhuǎn)到CSS代碼中,下面是我們要修改的代碼:

更具體地說,我們需要在一個(gè)媒體查詢中做出以下調(diào)整:

將h1的字體調(diào)整為20px;

減少#navbar的上外邊距為15px;

將#navbar的字體大小減少到20px;

減少.grid的外邊距為15px;

將.grid從兩列布局變?yōu)閱瘟胁季帧?/p>

注意:樣式表里不僅僅是這些CSS聲明,但是在這篇教程中我跳過它們,因?yàn)槊襟w查詢并不影響它們的設(shè)置。你可以在這里獲取完整的代碼。

舊方法

不使用CSS變量確實(shí)可以做到同樣的效果,但這樣會(huì)增加許多不必要的代碼,因?yàn)樯厦娲蟛糠中薷亩夹枰獙⒙暶髟诿襟w查詢中重寫一遍。就像下面這樣:

新的方法

現(xiàn)在讓我們看看使用CSS變量是如何起作用的。首先,我們要聲明需要更改或復(fù)用的變量:

然后,我們只需要在app中使用它們就可以了。非常簡單:

之后,我們可以在媒體查詢中修改這些變量值:

這樣的代碼是不是比之前要簡潔多了?我們只需要專注于:root選擇器就可以了。

我們將媒體查詢中的4個(gè)聲明減少到了1個(gè),代碼也從13行減少到了4行。

當(dāng)然,這只是一個(gè)簡單的例子。想象一下,在一個(gè)大中型網(wǎng)站中,有一個(gè)--base-margin變量控制著所有的外邊距。當(dāng)你想要在媒體查詢時(shí)修改屬性,并不需要用復(fù)雜的聲明填充整個(gè)媒體查詢,只是簡簡單單地修改這個(gè)變量值就可以了。

總之,CSS變量可以定義為未來的響應(yīng)式。如果你想要學(xué)習(xí)更多的知識,我推薦你看我的免費(fèi)教程。用不了多久你就能成為一個(gè)CSS變量大師。

原文:https://segmentfault.com/a/1190000013512723

最后:“相信有很多想學(xué)前端的小伙伴,今年年初我花了一個(gè)月整理了一份最適合2018年學(xué)習(xí)的web前端干貨,從最基礎(chǔ)的HTML+CSS+JS到移動(dòng)端HTML5等都有整理,送給每一位前端小伙伴,53763,1707這里是小白聚集地,歡迎初學(xué)和進(jìn)階中的小伙伴。”

祝大家早日學(xué)有所成,拿到滿意offer,快速升職加薪,走上人生巔峰。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 原文:https://medium.freecodecamp.org/how-to-make-responsive...
    grain先森閱讀 528評論 0 1
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)。 注意:講述HT...
    kismetajun閱讀 28,815評論 1 45
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,152評論 1 92
  • 精讀第五單元Text A 1,從本篇文章中我學(xué)到的重要概念 我們要善于發(fā)現(xiàn)身邊的特別的美,有一個(gè)感恩的心,和一顆堅(jiān)...
    17數(shù)412蘇磊閱讀 314評論 4 1
  • 我發(fā)現(xiàn),很多老板喜歡用“用心”兩個(gè)來表達(dá)工作態(tài)度。指出,用心工作就能夠發(fā)現(xiàn)不一樣,就能夠把 工作做好。其實(shí)我一直不...
    學(xué)道之人閱讀 596評論 0 0

友情鏈接更多精彩內(nèi)容