讀《CSS揭祕》總結一css
前言:文章是看《CSS揭祕》書邊看邊總結的筆記ios
目錄:bash
---------------------------------人工分割線---------------------------------------------------ide
1.考慮css值是依賴關係的時候,要用比例代碼表達。 例如:佈局
行高是字體的1.5倍
font-size: 20px;
line-height: 1.5;
字體是父字體的1.25倍
font-size: 125%;
line-height: 1.5
巧用em
padding: 0.3em 0.8em;
border-radios: 0.2em;
text-shasow: 0 -0.5em 0.05em #fff
複製代碼
==Tips:== 儘可能多使用比例的方式能使得你的修改,適應設備等很是靈活、簡便字體
2.靈活控制優化
這是你設計的按鈕樣式。spa
.button {
font-size: 125%;
line-height: 1.5
padding: 0.3em 0.8em;
border-radios: 0.2em;
background: blue;
}
複製代碼
稍加改造就能變成取消按鈕、確認按鈕的樣式設計
.button .cancel {
background: red;
}
.button .ok {
background: green;
}
複製代碼
==Tips:== 你能夠把這個按鈕的樣式放在你的全局css 庫中,class加上button就是一個按鈕樣式,class再加上ok就是一個確認按鈕了。code
3.使用currentColor變量簡化代碼
currentColor顧名思義是當前顏色,更準確的說是當前文本的顏色。 例如:你要設計一個按鈕,樣子是中間文字加上邊框。樣子想象一下,那麼你會但願這個邊框的顏色跟文字的顏色是一致的,這樣美美噠。
之前的實現方式 vs currentColor的實現方式:
舊:
button {
color: blue;
border: 1px solid blue;
}
新:
button {
color: blue;
border: 1px solid currentColor;
}
複製代碼
==Tips:== 這種方式有超級都的應用場景,在你開發的時候只要想起有這個變量就必定有幫到你的地方
4.使用inherit繼承關鍵字 簡單理解就是某個屬性的值跟隨父佈局的值 例如:當你遇到
<style>
span {
color: green;
}
</style>
<div class="parent" style="color:red">
123<span class="child">456</span>
</div>
複製代碼
此時運行的結果是(紅123)(綠456); 若是你想那個child的顏色跟parent的保持一致怎麼辦?
style再加一個
.child {
color: inherit;
}
複製代碼
這樣的話就是紅123456; parent改什麼顏色child就跟着變成什麼顏色。
==Tips:== 因此當遇到父佈局跟子元素之間有聯繫的屬性能夠考慮使用繼承的方式實現
在過往的開發中會大量使用媒體查詢(Media Query)去實現響應式的佈局(適應不一樣分別率的設備),但媒體查詢使用的越多,你的代碼就會變得越難以維護。本人並沒有這種開發經歷,簡單跳過。 這裏引入一位國外大神的語錄:
Basecamp的設計師:
結果咱們發現,想讓網頁在一堆不一樣的設備上合理展現,只須要在
最終產品上添加一點 CSS 媒體查詢就能夠了。這件事情之因此這麼簡單,
關鍵在於咱們的佈局本來就是彈性可伸縮的。所以,優化網頁在小屏幕上
的表現,其實只意味着把一些外邊距收攏到最小程度,而後把由於屏幕太
窄而沒法顯示成雙列的側欄調整爲單列布局而已。
複製代碼
下面是關於響應式佈局的設計建議:
咱們的思路就是想方設法的不使用固定寬高,如此一來你的網頁能有一個不錯的自適應屏幕的能力了,再搭配媒體查詢那應該能解決更多的屏幕適應問題。
這一篇文章就到這裏;後續會更新~