為什麼iOS上的Chrome沒有呈現設定好的list-style-type

一種Chrome,各自表述渲染結果

環境

Google Chrome (Desktop): 90.0.4430.85 (Official Build) (64-bit)
Google Chrome (iOS): 87.0.4280.163

原始問題

HTML 內容如下:

<ul id="thumbs-up">
  <li>Apple</li>
  <li>Banana</li>
  <li>Cherry</li>
</ul>

而 CSS 樣式設定如下:

#thumbs-up li {
  list-style-type: '\1F44D';
}

在電腦版的 Chrome 有正常顯示清單圖示「👍」,但切換到手機版的 Chrome,顯示的卻是「●」。 電腦版畫面 手機版畫面 同一份 CSS 樣式,同樣都用 Chrome 來瀏覽,為何<li>的樣式不同?

解答

使用::before 來實作

HTML 內容不變,CSS 樣式改為以下內容:

#thumbs-up {
  padding-inline-start: 0;
  /* 將<li>樣式的空間移除,使<li>(包含樣式與內文)向畫面左方靠攏 */
}

#thumbs-up li {
  list-style: none;
  /* 移除<li>樣式 */
}

#thumbs-up li::before {
  content: '👍 ';
  /* 使用content搭配::before來填入樣式內容 */
}

實際結果如下:

iOS裝置也可看到自定義的li樣式了

參考文件