- [規則聲明](#rule-declaration)
- [選擇器](#selectors)
- [屬性](#properties)
複製代碼
- [Less書寫順序](#less-order)
- [屬性書寫順序](#rule-order)
複製代碼
咱們把一個(或一組)選擇器和一組屬性稱之爲 「規則聲明」。舉個例子:javascript
.listing {
font-size: 18px;
line-height: 1.2;
}
複製代碼
在規則聲明中,「選擇器」 負責選取 DOM 樹中的元素,這些元素將被定義的屬性所修飾。選擇器能夠匹配 HTML 元素,也能夠匹配一個元素的類名、ID, 或者元素擁有的屬性。如下是選擇器的例子:css
.my-element-class {
/* ... */
}
[aria-hidden] {
/* ... */
}
複製代碼
最後,屬性決定了規則聲明裏被選擇的元素將獲得何種樣式。屬性以鍵值對形式存在,一個規則聲明能夠包含一或多個屬性定義。如下是屬性定義的例子:html
/* some selector */ {
background: #f1f1f1;
color: #333;
}
複製代碼
頁面的樣式入口文件按順序引入如下Less文件。java
/* globals.less */
@import "globals/mixins";
@import "globals/colors";
@import "globals/fonts";
/* components.less */
@import "components/tabs";
@import "components/modals";
/* sections.less */
@import "sections/header";
@import "sections/footer";
/* main.less */
@import "app/main";
複製代碼
CSS的命名規則react
/* 統一清除浮動 */
.g-bdc:after,
.m-dimg ul:after,
.u-tab:after {
display: block;
visibility: hidden;
clear: both;
height: 0;
overflow: hidden;
content: '.';
}
.g-bdc,
.m-dimg ul,
.u-tab {
zoom: 1;
}
/* 佈局 */
.g-sd {
float: left;
width: 300px;
}
/* 模塊 */
.m-logo {
width: 200px;
height: 50px;
}
/* 元件 */
.u-btn {
height: 20px;
border: 1px solid #333;
}
/* 功能 */
.f-tac {
text-align: center;
}
/* 皮膚 */
.s-fc,
a.s-fc:hover {
color: #fff;
}
複製代碼
{
前加上一個空格。:
後面加上一個空格,前面不加空格。}
獨佔一行。.weather {
&:extend(.module);
.transition(all 0.3s ease-out);
background: LightCyan;
&:hover {
background: DarkCyan;
}
&::before {
content: "";
display: block;
}
> h3 {
.transform(rotate(90deg));
border-bottom: 1px solid white;
}
...
}
複製代碼
→ | 顯示屬性 | 自身屬性 | 文本屬性和其餘修飾 |
---|---|---|---|
display | width | font | |
visibility | height | text-align | |
position | margin | text-decoration | |
float | padding | vertical-align | |
clear | border | white-space | |
list-style | overflow | color | |
top | min-width | background |
.page-container {
.content {
.profile {
// STOP!
}
}
}
複製代碼