OL定義有序列表的時候,除非指定list-style-position:inside;,否則文字和前導子是有縮排的。
但有的時候,OL定義的列表類型有限制,例如不能定義漢字的“一、二、三”,我們只好手動來輸入這些字符,但這下文字和字符連在一起。
運行程式碼框
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml ">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>first-letter</title>
<style type="text/css">
body{font-size:12px;width:600px;margin:2em auto;}
</style>
</head>
<body>
<ol>
<li>最初被稱為盒模型酸試驗,是一個用來測試瀏覽器的網頁。它在1998年10月開發,成為了衡量早期瀏覽器相容性的重要準線,特別是瀏覽器對層疊樣式表1.0的支援情況。就像用酸試驗來迅速且直觀的衡量一塊金屬的品質好壞,網頁酸試驗的目標是提供一個可以清楚地表明瀏覽器的是否遵守Web 標準的方法。 </li>
<li>此版本針對支援HTML、CSS 2.0及PNG影像[1]標準的綜合測試,由網頁標準計畫小組(Web Standards Project)設計。 </li>
<li>於2008年3月3日正式發布,其測試焦點集中在ECMAScript、DOM Level 3、Media Queries和data: URL[3]。以瀏覽器開啟此測試網頁後,頁面會不斷載入功能[4]並依測驗情況給予分數,滿分為100分</li>
</ol>
<hr />
<ol style="list-style:none;">
<li>一、最初稱為盒子模型酸試驗,是用來測試瀏覽器的網頁。它在1998年10月開發,成為了衡量早期瀏覽器相容性的重要準線,特別是瀏覽器對層疊樣式表1.0的支援情況。就像用酸試驗來迅速且直觀的衡量一塊金屬的品質好壞,網頁酸試驗的目標是提供一個可以清楚地表明瀏覽器的是否遵守Web 標準的方法。 </li>
<li>二、此版本針對支援HTML、CSS 2.0及PNG影像[1]標準的綜合測試,由網頁標準計畫小組(Web Standards Project)設計。 </li>
<li>三、2008年3月3日正式發布,其測試焦點集中在ECMAScript、DOM Level 3、Media Queries及data: URL[3]。以瀏覽器開啟此測試網頁後,頁面會不斷載入功能[4]並依測驗情況給予分數,滿分為100分</li>
</ol>
</body>
</html>
[Ctrl+A 全部選擇提示:你可先修改部分程式碼,再按執行]
這時候就可以使用first-letter這個偽類來幫忙了:
運行程式碼框
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns=" http://www.w3.org/1999/xhtml ">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>first-letter</title>
<style type="text/css">
body{font-size:12px;width:600px;margin:2em auto;}
ol.list { list-style:none; }
ol.list li:first-letter { margin-left:-2em;color:blue;font-weight:bold;}
</style>
</head>
<body>
<ol>
<li>最初被稱為盒模型酸試驗,是一個用來測試瀏覽器的網頁。它在1998年10月開發,成為了衡量早期瀏覽器相容性的重要準線,特別是瀏覽器對層疊樣式表1.0的支援情況。就像用酸試驗來迅速且直觀的衡量一塊金屬的品質好壞,網頁酸試驗的目標是提供一個可以清楚地表明瀏覽器的是否遵守Web 標準的方法。 </li>
<li>此版本針對支援HTML、CSS 2.0及PNG影像[1]標準的綜合測試,由網頁標準計畫小組(Web Standards Project)設計。 </li>
<li>於2008年3月3日正式發布,其測試焦點集中在ECMAScript、DOM Level 3、Media Queries和data: URL[3]。以瀏覽器開啟此測試網頁後,頁面會不斷載入功能[4]並依測驗情況給予分數,滿分為100分</li>
</ol>
<hr />
<ol class="list">
<li>一、最初稱為盒子模型酸試驗,是用來測試瀏覽器的網頁。它在1998年10月開發,成為了衡量早期瀏覽器相容性的重要準線,特別是瀏覽器對層疊樣式表1.0的支援情況。就像用酸試驗來迅速且直觀的衡量一塊金屬的品質好壞,網頁酸試驗的目標是提供一個可以清楚地表明瀏覽器的是否遵守Web 標準的方法。 </li>
<li>二、此版本針對支援HTML、CSS 2.0及PNG影像[1]標準的綜合測試,由網頁標準計畫小組(Web Standards Project)設計。 </li>
<li>三、2008年3月3日正式發布,其測試焦點集中在ECMAScript、DOM Level 3、Media Queries及data: URL[3]。以瀏覽器開啟此測試網頁後,頁面會不斷載入功能[4]並依測驗情況給予分數,滿分為100分</li>
</ol>
<hr />
<ol class="list">
<li>壹、最初被稱為盒模型酸試驗,是一個用來測試瀏覽器的網頁。它在1998年10月開發,成為了衡量早期瀏覽器相容性的重要準線,特別是瀏覽器對層疊樣式表1.0的支援情況。就像用酸試驗來迅速且直觀的衡量一塊金屬的品質好壞,網頁酸試驗的目標是提供一個可以清楚地表明瀏覽器的是否遵守Web 標準的方法。 </li>
<li>貳、此版本針對支援HTML、CSS 2.0及PNG影像[1]標準的綜合測試,由網頁標準計畫小組(Web Standards Project)設計。 </li>
<li>叁、2008年3月3日正式發布,其測試焦點集中在ECMAScript、DOM Level 3、Media Queries和data: URL[3]。以瀏覽器開啟此測試網頁後,頁面會不斷載入功能[4]並依測驗情況給予分數,滿分為100分</li>
</ol>
</body>
</html>
[Ctrl+A 全部選擇提示:你可先修改部分程式碼,再按執行]
這下,前導符就和文字保持一定距離了,而且能控制的樣式也更多一點。
不過前導符後面那個頓號就控制不到樣式了,但我想可不可以設定背景圖來取代呢?
簡單測試卻發現,控制first-letter偽類的背景,與控制list-style-image一樣讓人琢磨不透,遂棄之。
另外,各個瀏覽器對待前導子旁邊的符號處理方式也不一樣,因為沒有安裝Safari,所以沒有測試它:
代碼:
渲染結果:
IE8和FF3和Opera表現一致,Chrome只對左側的符號進行處理,IE6、7就只處理了第一個字元。