---
# System prepended metadata

title: 01-2_CSS
tags: [Skill]

---

###### tags: `Skill`

# 01-2_CSS

## 工具包
> [Tailwind CSS](https://tailwindcss.com/)
> [什麼是 Tailwind CSS？](https://5xruby.tw/posts/tailwind-css-plugin)



## px em換算
> [px em 換算表](http://pxtoem.com/)



## 選擇器
> [30個你必須記住的CSS選擇器](https://code.tutsplus.com/zh-hant/tutorials/the-30-css-selectors-you-must-memorize--net-16048)
> [排除某個元素](https://blog.csdn.net/heygirl1/article/details/53611263)
 - 相鄰選擇器 +
![](https://i.imgur.com/jyS027O.jpg)
   1. .hd+.ct+.ft li.more的概念為「 .hd 下面的 .ct 下面的 .ft   這個區塊裡面的 li.more」
   2. "+" 指的是剛好相鄰   不是裡面中間也沒相隔
   3. ![](https://i.imgur.com/KZe8slz.png)
   4. 如果少了.hd 或是少了 .ct 都無法成立 display: block



## 屬性
> [谈谈 CSS 关键字 initial、inherit 和 unset](https://www.cnblogs.com/libin-1/p/6734751.html)



## 不熟悉的屬性
 - text-indent 首行字的縮進
 - letter-spacing 字符的間距
 - word-spacing 單詞的間距
 - word-break 文字強制換行、不換行



## 權重
 - [強烈推薦收藏好物 – CSS Specificity (CSS 權重一覽)](https://muki.tw/tech/css-specificity-document/)
 - <font color="#f44336">pseudo-class</font>優先權順序
     - :link
     - :visited
     - :focus
     - :hover
     - :active
     > [順序有那麼重要嗎？](https://ithelp.ithome.com.tw/articles/10239535)
     > [幾個CSS的學習心得與小技巧](https://hackmd.io/@IUOGmfklQWSevEwFz8S1tQ/H1QSHRu-w)



## RWD
> [易犯的 RWD 網站製作失誤](https://blog.user.today/rwd-mistake/)
> [常用斷點(常用螢幕解析度)](https://ithelp.ithome.com.tw/m/articles/10331102)
 
 ![Mze9Ml2](https://hackmd.io/_uploads/S1j00fLZC.png)



## :focus-within
 - 偽類選擇器
 - :focus-within 是一個`可以用來改變上層元素樣式的偽類選擇器`，只要在你要套用的元素上面加上 :focus-within，這樣裡面只要有表單元素有被 focus，就會吃到該樣式。
 - <font color="#f44336">可運用於共構的選單，當選單內連結被選取時，父元素會有會有變化。</font>
> [設定 focus 後讓上層元素改變樣式的選擇器- :focus-within](https://tools.wingzero.tw/article/sn/237)
> [CSS :focus-within 的作用和用法](https://www.webhek.com/post/css-focus-within/#google_vignette)



## :has()
 - 偽類選擇器
 - 可指定子元素、兄弟元素(`+*`)
 - 特色：`可子元素、兄弟元素影響父元素`
> [CSS最新的強大 :has() 父層選取器來了！](https://www.tpisoftware.com/tpu/articleDetails/2883)
> [CSS :has()伪类她来了](https://www.zhangxinxu.com/wordpress/2022/08/css-has-pseudo-class/)



## :not()
 - 偽類選擇器
 - 它的作用是防止特定的元素被選中，它也被稱為反選偽類別（negation pseudo-class）
 - 特色：排除你不要的東西(class、選擇器等)
 - `div:not(:last-child){ margin-right:10px;}`
 - 上方程式碼意思是，最後一個div不要套用該樣式`margin-right:10px`
> [:not() - CSS：层叠样式表 | MDN](https://developer.mozilla.org/zh-CN/docs/Web/CSS/:not)
> [CSS的:not選擇器](https://www.webdesigns.com.tw/CSS-not-selector.asp)



## :empty
 - 偽類選擇器
 - 用於選擇不包含任何子元素的元素。
> [:empty - CSS：层叠样式表 | MDN](https://developer.mozilla.org/zh-CN/docs/Web/CSS/:empty)



## 元素垂直置中方法
 - 單行置中：line-height
 - 多行元素置中：inline-block & vertical-align
     - vertical-align原是用於圖片垂直對齊用
     - 用於多個元素對其方式
     - 如需在父元素內垂直置中，則需添加偽元素撐滿高，才能使它看起來在父元素內是置中的
 - 單個元素在父元素內置中：transform
     - 利用 transform 裏頭的 translateY ( 改變垂直的位移，如果使用百分比為單位，則是以元素本身的長寬為基準 )，搭配元素本身的 top 屬性
     - 需加position: relative、top
    ```
    .use-transform{
        width:200px;
        height:200px;
        border:1px solid #000;
    }
    .use-transform div{
        position: relative;
        width:100px;
        height:50px;
        top:50%;
        transform:translateY(-50%);
        background:#095;
    }
    ```
 - 單個元素在父元素內置中：負margin
    - 父元素設定relative
    - 元素設定absolute，利用top50%、left50%，將元素左上角位於父元素中心點
    - 元素用margin-top、margin-left往上左拉
> [CSS 垂直置中的三個方法](https://www.oxxostudio.tw/articles/201408/css-vertical-align.html)
> [CSS 垂直置中的七個方法](https://www.oxxostudio.tw/articles/201502/css-vertical-align-7methods.html)
> [使用 inline-block 版面配置](https://zh-tw.learnlayout.com/inline-block-layout.html)



## 元素置中方法
 - text-align：center
    - 設定行內元素置中(inline、inline-block、a、p...)
    - 需設定在父元素上
 - margin：0 auto
    - 設定塊狀元素置中(block、div...)
    - 需有固定寬度
    - 需設定在元素本身
> [正確的使用margin:0 auto與body{text-align:center;}實現元素居中](https://www.itread01.com/content/1548430205.html)
> [用CSS/CSS3 實現 水平居中和垂直居中的完整攻略](https://www.itread01.com/content/1548951151.html)
> [正確的使用margin:0 auto與body{text-align:center;}實現元素居中](https://www.itread01.com/content/1548430205.html)



## inline-block
 - inline-block元素之間會有縫隙，父元素內加 `word-spacing:-1em;`，可解決縫隙問題
 - 使用inline-block會內建vertical-align: baseline屬性，在inline-block元素內容多寡不相同時，baseline屬性會讓元素看起來是置下的，因此可用vertical-align: top解決此問題
> [解决设置inline-block后不对齐问题](https://blog.csdn.net/sheng_li/article/details/76805158)
> [解决inline-block元素的3个bug](https://segmentfault.com/a/1190000010934928)
> [去除inline-block元素間間距的N種方法](https://www.zhangxinxu.com/wordpress/2012/04/inline-block-space-remove-%E5%8E%BB%E9%99%A4%E9%97%B4%E8%B7%9D/)



## 圖片隨尺寸縮放
```
img{
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;	
}
```



## 清除float浮動的各種方法
 - 父元素加clearfix(偽元素)
```
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
```



## float與Overflow
 > [[CSS] Overflow清除Float效果的妙用](https://audilu.com/2011/02/19/css-overflow-clear-float/)
 - 圖片元素設定float效果，造成的所謂「文繞圖」效果。若是我們在文字區塊上設定 overflow:auto，文字就不會再繞圖了。
這種設定造成文字會視圖片的寬度來切齊顯示區域，而這樣的設計很常在回覆區域的設計上見到，即是把大頭照放一邊，留言文字切齊放另一邊。



## position概念
#### 有4個值可以使用
 - static (不會被定位)
 - relative (相對定位/沒設屬性就跟static一樣)
 - absolute (絕對定位/定位在上層容器 or body)
 - fixed (視窗定位)
 - sticky(滑到物件時被固定在上方,是用於menu)
#### 相對定位 & 絕對定位的差異
 - 相對定位
    1. 相對於原本位置的移動
    2. 仍占據原本的位置
    3. 其他元素的定位不受影響
    4. 元素會重疊
 - 絕對定位
    1. 完全脫離原本結構(像fixed一樣浮在最上面的圖層)
    2. 從父元素往上找有無定位元素(relative | absolute | fixed | inherit)，若無就以body為定位點(左上角)
    3. 無占空間
    4. 如未設定屬性，元素則漂浮並無占空間在原本位置
> [關於 position 屬性](https://zh-tw.learnlayout.com/position.html)
> [CSS relative? absolute? 傻傻分不清楚](https://ithelp.ithome.com.tw/articles/10212202)



## 關於盒模型Box Model
> [關於 Box Model（區塊模型）](https://zh-tw.learnlayout.com/box-model.html)
> [網頁的Box Model到底是蝦米挖溝](https://medium.com/@zz41354899/%E7%B6%B2%E9%A0%81%E7%9A%84box-model%E5%88%B0%E5%BA%95%E6%98%AF%E8%9D%A6%E7%B1%B3%E6%8C%96%E6%BA%9D-70b087f3e4d8)



## box-sizing
- Box Model的內距(padding)外距(margin)和邊框(border)將不會增加元素本身的寬度。
```
* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
```
> [關於 box-sizing 屬性](https://zh-tw.learnlayout.com/box-sizing.html)



## 用Margin還是用Padding
#### 何時應當使用margin
- 需要在border外側添加空白時。
- 空白處不需要背景（色）時。
- 上下相連的兩個盒子之間的空白，需要相互抵消時。如15px + 20px的margin，將得到20px的空白。
#### 何時應當時用padding
- 需要在border內測添加空白時。
- 空白處需要背景（色）時。
- 上下相連的兩個盒子之間的空白，希望等於兩者之和時。如15px + 20px的padding，將得到35px的空白。
#### margin-top的影響
 - 交疊的margin，如沒有border、padding相鄰，則會合併。
 - 解決方法：
     1. 父元素加border
     2. 父元素加padding
     3. 父元素加overflow:hidden
> [子元素margin-top为何会影响父元素？](https://blog.csdn.net/sinat_27088253/article/details/52954688)
> [不要告訴我你懂margin](https://fredevangigi.pixnet.net/blog/post/57202532)



## background屬性
>[background 属性](https://www.w3school.com.cn/cssref/pr_background.asp)
>  [意想不到的background-attachment](https://wcc723.github.io/css/2013/09/25/background-att/)
> [多重背景](https://developer.mozilla.org/zh-TW/docs/Web/CSS/CSS_Background_and_Borders/Using_CSS_multiple_backgrounds)
> [漸層效果](http://www.wibibi.com/info.php?tid=CSS3_Gradients_%E6%BC%B8%E5%B1%A4%E6%95%88%E6%9E%9C)
> [background-position](https://developer.mozilla.org/zh-CN/docs/Web/CSS/background-position)
> [background-size](https://www.kip.com.tw/modules/news/article.php?storyid=35)



## SVG、圖片遮罩效果
> [CSS Masks 圖片遮罩效果](https://w3c.hexschool.com/blog/24db18f8)
> [在CSS背景图片中使用SVG的优点](http://svgtrick.com/tricks/3b3a77a38f6222b7974039c1ba36abba)
> [CSS: SVG上色](https://ithelp.ithome.com.tw/articles/10201737)



## 全域性樣式
> [css的全域性樣式](https://www.itread01.com/p/651167.html)
> [[Bootstrap]全域性樣式（二）](https://www.itread01.com/p/654426.html)



## css reset
> [reset.css](https://gist.github.com/DavidWells/18e73022e723037a50d6)



## css 動畫
> [CSS3動畫快速入門](https://eyesofkids.gitbooks.io/css3/content/contents/transform2d.html)
> [CSS 加載動畫：理查等等](https://tpu.thinkpower.com.tw/tpu/articleDetails/1795)
> [完整解析 CSS 動畫 ( CSS Animation )](https://www.oxxostudio.tw/articles/201803/css-animation.html)
> 圖片持續移動效果：
`animation: slide 150s linear infinite;`

### 打字動畫
> [快速實作 CSS3 打字動畫](https://blog.arvinh.info/tech/css-typing-animation)
> [可換行的打字動畫效果](https://hamsterism.com/articles/wrapable-typing-animation/)

### transition
> [CSS transition 各種速率](https://wcc723.github.io/css/2013/08/24/css-transtion-speed/)
> [前端新手村 Transition](https://ithelp.ithome.com.tw/articles/10195205)
> [Transition 實作波動拳動圖](https://wcc723.github.io/sass/2013/10/02/transition/)
> [CSS Transitions](https://developer.mozilla.org/zh-TW/docs/Web/CSS/CSS_Transitions)

### 互動效果
> [讓設計跟著指尖走：觸控設備上的互動效果](https://sparkful.app/zh-TW/blog/interaction-design-on-touch-screens)
> [CSS微動畫 - 為什麼別人的按鈕點起來比較有感覺？](https://ithelp.ithome.com.tw/articles/10262387)




## 陰影
> [box-shadow 區塊陰影](https://abgne.tw/css/css3-lab/css3-box-shadow.html)
> [CSS3 box-shadow 效果大全（内阴影，外阴影，三边阴影，双边阴影，单边阴影，细线描边…）](https://www.html.cn/archives/9360)
> [CSS Box Shadow - 僅限頂部和底部](https://stackoverflow.com/questions/6671375/css-box-shadow-top-and-bottom-only)



## flex
#### flex是以下3個值的縮寫，默認值是0 1 auto
[Flexbox Froggy Flex小遊戲](https://flexboxfroggy.com/#zh-tw)
 - flex-grow
 - flex-shrink
 - flex-basis
> [flex：1代表什么意思](https://blog.csdn.net/aliven1/article/details/78853725)
> [圖解：CSS Flex 屬性一點也不難](https://wcc723.github.io/css/2017/07/21/css-flex/)
> [CSS3 display:flex](https://wcc723.github.io/css/2013/10/24/css-flex-1/)



## grid
[Grid Garden Grid小遊戲](https://cssgridgarden.com/)
[layoutit - Grid工具](https://grid.layoutit.com/)
> [CSS Grid 屬性介紹](https://wcc723.github.io/css/2017/03/22/css-grid-layout/)
> [CSS Grid Cheat Sheet Illustrated in 2021](https://dev.to/joyshaheb/css-grid-cheat-sheet-illustrated-in-2021-1a3?ref=webdesignernews.com)
> [簡單入門 Grid 屬性/用法/使用情境](https://hoyis-note.coderbridge.io/2021/09/30/CSS-Grid/)




## Slider and Carousel 幻燈片
> [Swiper](https://swiperjs.com/demos/)



## 格線佈局的基本概念
> [格線佈局的基本概念](https://developer.mozilla.org/zh-TW/docs/Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout)



## 裁切圖片
> [CSS：裁切圖片](https://ithelp.ithome.com.tw/articles/10194708)



## border 
### 三角形
> [CSS border-style 邊框樣式](https://www.wibibi.com/info.php?tid=89)
> [使用 CSS border 製作梯形、三角形、對話框](https://www.footmark.info/web-design/css/css-border-create-triangle/)
> [CSS三角形產生器](http://apps.eky.hk/css-triangle-generator/zh-hant)
### Border運用
> [Border 運用技巧（手繪框線、三角形、空間運用）](https://www.casper.tw/css/2020/02/21/css-border/)



## 關於...省略號
 - 單行的...
   可用共構的function處理，其處理方式為**在需要...的元素上**寫以下語法
```
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
```
 - 多行的...
   可參考桃園市政府首頁的消息區塊，**在需要...的元素上**寫以下語法
```
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
```
 - *-webkit-line-clamp* 顯示行數，*overflow*是為了要剪裁多出來的行
> [关于文字内容溢出用点点点(…)省略号表示](https://www.zhangxinxu.com/wordpress/2009/09/%E5%85%B3%E4%BA%8E%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%E6%BA%A2%E5%87%BA%E7%94%A8%E7%82%B9%E7%82%B9%E7%82%B9-%E7%9C%81%E7%95%A5%E5%8F%B7%E8%A1%A8%E7%A4%BA/)
> [用 CSS 完成單行與多行省略號功能](https://netivism.com.tw/blog/492) **有多行的表現**



## 清除網頁內鍵效果/input(ios.firefox)
> [解決input button在iOS上(iPad/iPhone)css樣式跑掉](https://smiletrip.pixnet.net/blog/post/343751019-%5Bhtml%5D%E7%A7%BB%E9%99%A4input-button%E5%9C%A8ios%E4%B8%8A%E7%9A%84%E5%85%A7%E5%BB%BA%E6%A8%A3%E5%BC%8F)
> [套用CSS樣式後的input button在iOS上的顯示問題](https://evacyl52201.pixnet.net/blog/post/31887873)



## 解決下拉選單option文字過長問題
> [牧謙給的資料](http://jsfiddle.net/t0xicCode/454Lqbz8/)



## IOS Bug
> [iOS Safari浏览器上overflow: scroll元素无法滑动bug解决方法整理](https://segmentfault.com/a/1190000012761272)
> [一个超级诡异的 iOS Safari `position: fixed` 失效问题](https://segmentfault.com/a/1190000008450982)
> [如何讓「backdrop-filter:blur()」效果在 iOS 上運作](https://stackoverflow.com/questions/75606971/how-can-i-make-backdrop-filter-blur-effect-work-on-ios)



## font: 0/0 a;的意思
> [请问css中font: 0/0 a;起什么作用](https://bbs.csdn.net/topics/390494313)



## cursor滑鼠游標
> [CSS 語法「cursor 屬性」改變滑鼠游標的形狀](http://www.flycan.com/article/css/css-cursor-209.html)



## Notification Buttons 通知按鈕
> [How TO - Notification Buttons](https://www.w3schools.com/howto/howto_css_notification_button.asp)



## 模糊效果 (box-shadow / text-shadow)
> [CSS 模糊效果](https://www.oxxostudio.tw/articles/201407/css-blur.html)



## filter
> [CSS webkit filter](https://www.oxxostudio.tw/articles/201407/css-webkit-filter.html)
> [filter 變色特效](https://orandigo.github.io/blog/2020/05/31/20200531-filter/)
> [drop-shadow與box-shado大不同，讓CSS也可為透明圖片加上陰影](https://www.minwt.com/webdesign-dev/css/19671.html)
> [純CSS毛玻璃特效：backdrop-filter屬性介紹](https://wcc723.github.io/development/2020/10/12/frosted-glass/)
> [CSS filter 生成不规则边框.md](https://segmentfault.com/a/1190000040490964)
> [什麼?? CSS也有濾鏡可以用! (CSS3 filter)](https://www.eztrust.com.tw/html/webdesign/show.aspx?num=13&category=B&kind=10)



## Table
 - 拿掉Table th td的空間
```
<table style="border-collapse:collapse">
```
 - 使table/th的寬度均分一致：`table-layout: fixed`
 - 強制table的內文斷行：`word-wrap:　break-word`
> [用CSS+DIV畫表格(table)進行網頁排版](https://sofree.cc/css-table/)



## 計算式calc()
> [CSS： calc() 數值運算](https://5xruby.tw/posts/css-calc/)
> [《CSS3教學》calc讓CSS單位也可用加、減、乘、除](https://www.minwt.com/webdesign-dev/css/11583.html)
 - ![樂樂雲林聯合服務中心base-logo](https://i.imgur.com/WglN1q1.jpg)
    top-logo.png寬為400px，照上寫法margin-left為200px。
 - ![蜜蜜的嘉義版6_area-customize_icons](https://i.imgur.com/9Nq8vtZ.jpg)
    有變數的話就不用括胡
> [SASS : #{ } 插值](https://ithelp.ithome.com.tw/articles/10204325) calc內加入變數



## 路徑概念
> [路径中“./”、“../”、“/”代表的含义](https://blog.csdn.net/Young__Fan/article/details/80152501)



## pointer-events
> [穿透的 div ( pointer-events )](https://www.oxxostudio.tw/articles/201409/pointer-events.html)



## checkbox樣式
> [修改checkbox樣式](https://www.itread01.com/content/1546518799.html)



## 影像地圖
> 讓地圖focus時會出現outline樣式：在地圖的img加上position: static
> [如何製作響應式的影像地圖](http://blog.shihshih.com/responsive-image-map/)
> 修改focus顏色：
```
map area:focus {
    outline-width: 3px;
    outline-style: dashed;
    outline-color: invert($major-color);
}
```


## ID錨點
> [HTML 錨點偏移 CSS and JS 兩種方法 (offset anchor tag link)](https://vector.cool/offset-anchor-tag-link/)
> [解決 HTML Anchor 內文被選單遮住的問題](https://coder.tw/?p=7479)
```
body :target:before{
  display: block;
  content: "";
  height: 160px;
  margin: -160px 0 0;
}
```
body改成要移動到的區塊



## print設定
> [關於 @media print 的二三事](https://kakadodo.github.io/2018/03/13/css-media-print-setting/)
> [CSS 列印的小技巧：@media print、break-before/after/inside、@page](https://im1010ioio.hashnode.dev/css-media-print)



## CSS濾鏡效果
> [CSS濾鏡效果](http://blog.shihshih.com/css-filter/)
> [CSS魔法堂：那個被我們忽略的outline](https://www.itread01.com/ehkxex.html)



## lightbox
> [利用純 CSS3 做出自適應的 lightbox](https://muki.tw/tech/responsive-css3-lightbox-without-javascript/)



## 禁用hover及a連結
> [是否有方法阻止":hover" 触发样式](https://segmentfault.com/q/1010000000121521)
> [如何禁用連結](https://iter01.com/52661.html)



## iframe
### 隨RWD縮放
原理是使用 父元素 裡的 padding-bottom (或 padding-top 也可以) 屬性將 iframe 撐開，這裡使用 75% 是因為 iframe 起始值的 width 為 600 而 height 為 450，所以 height 永遠為 width 的 0.75 。
```
<style>
    .父元素classname {
        position: relative;
        padding-bottom: 75%; // This is the aspect ratio
        overflow: hidden;
    }
    .父元素classname iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
    }
</style>
```
> [iframe 如何跟著 RWD 網站縮放](https://ian.partners-studio.com/2017/07/07/iframe-%E5%A6%82%E4%BD%95%E8%B7%9F%E8%91%97-rwd-%E7%B6%B2%E7%AB%99%E7%B8%AE%E6%94%BE/)
> [設定iframe內鑲YouTube影片的寬度為100%，高度自動調整](https://nknuahuang.wordpress.com/2020/04/23/how-to-make-a-responsive-100-width-youtube-iframe-embed/)



## 變反白選取的顏色
> [CSS 改變反白選取的顏色 ::selection](https://tools.wingzero.tw/article/sn/62)



## 文字處理
> [[教學] 透過CSS3的屬性text-stroke，就能實現樓空的文字邊框效果](https://www.minwt.com/webdesign-dev/css/22137.html)



## 混合模式(像PS一樣)
> [我把CSS變成Photoshop了！我跟mix-blend-mode剛認識](https://www.tpisoftware.com/tpu/articleDetails/2798)
> [參考網頁](https://nanatsuya-stay.com/)



## min-content、max-content
> [理解CSS3 max/min-content及fit-content等width值](https://www.zhangxinxu.com/wordpress/2016/05/css3-width-max-contnet-min-content-fit-content/)
> [CSS 的 min-content 與 max-content 屬性](https://tools.wingzero.tw/article/sn/754)


## Textarea 文字框的各種問題
> [Textarea Tricks 文字框技巧](https://css-tricks.com/textarea-tricks/)
> [顯示文字框的文字區域而不滾動](https://stackoverflow.com/questions/30050605/display-all-textarea-rows-without-scrolling)
> [列印文字框時只顯示卷軸](https://stackoverflow.com/questions/49876216/printing-bootstrap-text-area-it-only-shows-scroll-bar)


## RWD & CSS Media Queries
> [RWD & CSS Media Queries & iOS Safari 上的經驗談](https://ithelp.ithome.com.tw/articles/10337429)


## 跨瀏覽器
> [跨瀏覽器網頁設計密技](https://blog.miniasp.com/post/2012/05/02/Building-Website-is-not-that-easy-CSS-Hacks-and-IE-Conditional-Comments) 各瀏覽器 CSS Hacks 技巧
> [不同瀏覽器用不同CSS](https://www.tad0616.net/modules/tad_book3/page.php?tbsn=4&tbdsn=73)


## 步驟進度條
> [偽元素應用- Step progress bar 進度條](https://ithelp.ithome.com.tw/articles/10200843?sc=rss.iron)


## CSS計數器
`counter-*`
> [counter- 讓 css 幫你計數](https://tools.wingzero.tw/article/sn/252)
> [使用 CSS 计数器](https://developer.mozilla.org/zh-CN/docs/Web/CSS/CSS_counter_styles/Using_CSS_counters)