個人理解,大概有這麼幾個原因:
1、html標記語言最初是用來排版的,document 翻譯過來就是“文件”。ul / ol > li 這個組合,就是用來表示有序、無序列表,它兼具了語義和排版的雙重功能,從視覺上肯定要和普通的段落有區別,而區別就是預設縮排,以及前面的圓點>圓圈>方塊,或者數字序號。
2、css 是可以透過透過外鏈引入的資源,那麼就存在無法載入的情況,一些同時兼具語義和排版功能的標籤,需要考慮在 css 載入失敗的時候,文件仍然能保證良好的可讀性,因此縮排 + 前置符號的規則不宜去除。
3、li 對小圓點的使用頻率遠遠小於 none ,是前端歷史發展的一個階段性特點而已,雖然如今語義功能的使用場景已經超過了排版功能,但作為標準的制定者,需要考慮到標準的前後一致性,也就是我們常說的“歷史原因”。不排除將來可能會改,但是如果你要問“設計之初為什麼”,那當然是因為最初那個年代,li 排版功能的使用場景是遠遠超過語義功能的。
個人理解,大概有這麼幾個原因:
1、html標記語言最初是用來排版的,document 翻譯過來就是“文件”。ul / ol > li 這個組合,就是用來表示有序、無序列表,它兼具了語義和排版的雙重功能,從視覺上肯定要和普通的段落有區別,而區別就是預設縮排,以及前面的圓點>圓圈>方塊,或者數字序號。
2、css 是可以透過透過外鏈引入的資源,那麼就存在無法載入的情況,一些同時兼具語義和排版功能的標籤,需要考慮在 css 載入失敗的時候,文件仍然能保證良好的可讀性,因此縮排 + 前置符號的規則不宜去除。
3、li 對小圓點的使用頻率遠遠小於 none ,是前端歷史發展的一個階段性特點而已,雖然如今語義功能的使用場景已經超過了排版功能,但作為標準的制定者,需要考慮到標準的前後一致性,也就是我們常說的“歷史原因”。不排除將來可能會改,但是如果你要問“設計之初為什麼”,那當然是因為最初那個年代,li 排版功能的使用場景是遠遠超過語義功能的。