[toc]
## 由中間向兩邊伸縮
初始大小與位置
```
position:absolute;
content: '';
display:block;
width:0;
border:1px solid rgba(255,255,255,1);
margin-left:50%;
left:0;
```
hover時
```
width:100%; //向右(看起來是,其實是向左速度的兩倍,但因為整體向左偏移...)
margin-left:0; //向左
```
## 光斑效果?(光條換過玻璃)
需要嵌一個子元素,子元素為要顯示的內容,需將其z-index提升
在父元素上創建一個偽類,做光斑。
矩形,`rotate(35deg)`左右,再用`left/top負值`將它隱藏(通過父元素`overflow:hidden`),hover時再讓它通過`left正值`向右滑過。
貝塞爾曲線參考
```
transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
```
## 平面立體按鈕
hover時收斂陰影(雙陰影變單層細陰影)并加深(變黑),字體顏色加深+字體內陰影,按鈕背景色加深,邊框加深(變黑)
```
.btn-3 {
box-shadow: 0px 2px 0 #d6251f, 2px 4px 6px #e02a24;
background: #e3403a;
border: 1px solid #da251f;
font-weight: 900;
letter-spacing: 1px;
-webkit-transition: all 150ms linear;
transition: all 150ms linear;
}
.btn-3:hover {
box-shadow: 1px 1px 2px rgba(255, 255, 255, 0.2);
background: #e02c26;
border: 1px solid rgba(0, 0, 0, 0.05);
text-shadow: -1px -1px 0 #c2211c;
color: #ec817d;
text-decoration: none;
-webkit-transition: all 250ms linear;
transition: all 250ms linear;
}
```
## 擴散效果
通過outline,outline-offest,并讓outline逐漸透明。
hover時,button內部產生侵蝕效果(通過大數值模糊半徑,水平垂直陰影為0,光是模糊半徑)
```
.btn-5 {
border: 0 solid;
box-shadow: inset 0 0 20px rgba(255, 255, 255, 0);
outline: 1px solid;
outline-color: rgba(255, 255, 255, 0.5);
outline-offset: 0px;
text-shadow: none;
-webkit-transition: all 1250ms cubic-bezier(0.19, 1, 0.22, 1);
transition: all 1250ms cubic-bezier(0.19, 1, 0.22, 1);
}
.btn-5:hover {
border: 1px solid;
box-shadow: inset 0 0 20px rgba(255, 255, 255, 0.5), 0 0 20px rgba(255, 255, 255, 0.2);
outline-color: rgba(255, 255, 255, 0);
outline-offset: 15px;
text-shadow: 1px 1px 2px #427388;
}
```
- 空白目錄
- 未處理
- webpack中的css模塊化
- CSS預處理器
- 效果
- 元素裝飾與美化
- 顏色
- checkbox
- img
- background
- clip-path
- 字體
- 文本控制
- text-indent
- letter-spacing
- word-spacing
- word-break和word-wrap
- white-space
- text-align
- text-decoration
- text-transform
- first-letter
- first-line
- 有關CSS百分單位的那些奇葩事兒
- 破壞性、包裹性、塊狀化
- 強大的absolute
- padding
- relative
- 繼承性
- fixed
- float
- BFC
- z-index
- overflow
- clip
- 最佳可訪問性隱藏
- 關于scrollHeight/Width
- 包含塊
- margin
- 布局系統
- 雜
- Flex
- Grid
- 自定義布局系統
- gutter實現思路
- 選擇器
- 偽元素和偽類
- css3
- appearance
- CSS2.1
- tmp
- 未定義行為
- 焦點元素
- outline輪廓
- 替換元素
- 盒子模型
- 塊級元素/盒子
- 標記盒子
- 容器盒子(內在盒子)
- 內聯元素/盒子
- 字母X
- line-height
- vertical-align
- font-size
- 內聯元素盒子模型新解
- line-height定義
- line-height與行內框盒子模型
- line-height與內聯元素的高度機制
- line-height值
- line-height與圖片
- vertical-align支持的屬性值及組成
- vertical-align起作用前提
- vertical-align與圖片
- vertical-align與line-height
- vertical-align前后不一的行為表現
- vertical-align實際應用
- line-height與height
- width/height與auto
- 最小內容寬度
- 最大內容寬度
- min/max-width/height注意事項
- 流:外部尺寸與內部尺寸
- 流體布局下的寬度分離原則
- height:auto
- 瀏覽器渲染原理
- 移動端