CSS 第一步 - 摧毀瀏覽器預設的樣式設定
ally 2011.04.04
即使不寫任何 CSS 語法,只寫基本的 HTML tag,瀏覽器還是會針對一些 HTML tag 產生樣式效果。有些預設效果方便好用,我能接受,也都直接使用,例如:
<b>:粗體字
<i>:斜體字
<u>:底線字
但有些預設效果我不喜歡,例如:
<h1> ~ <h6>:預設各種字體大小,但不是我喜歡的大小。
<table> <tr> <td>:表格的 td 和 td 之間預設就有間距,我不喜歡。
<th>:預設粗體字,我能接受,但預設置中對齊我就不喜歡。
在學習 CSS 之初,我就對一些預設樣式很反感,尤其是在設定各種間距或尺寸時,表格預設間距、頁面邊界預設間距、預設行距行高、預設段落間距... 等等都會造成混淆,因為自己的設定還要加上預設的設定才是最後呈現的樣貌,真是亂七八糟。
在網路上查閱 CSS 相關資訊時,發現有些人跟我一樣不喜歡這些預設的樣式。有個歐美人還整理好一堆摧毀這些預設設定的語法,我就把它拿來用,真是謝謝他,雖然這些都不難,但自己寫也要花時間,撿現成的最方便。
所以,爾後我在寫 CSS 時,開頭一定是以下這一大段設定,反正就是先把一堆預設設定都拿掉就對了。如果後續想用這些 tag,再一個一個自己寫設定,完全自己掌控。
/******************************************************************************/
/* collapse default configuration from browser */
/******************************************************************************/
body, p, div, span, th, td, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, blockquote {
margin: 0px;
padding: 0px;
}
th, h1, h2, h3, h4, h5, h6, code, cite, dfn, var {
font-size: 100%;
font-style: normal;
font-weight: normal;
}
ol, ul {
list-style: none;
}
table {
border-collapse: collapse;
border-spacing: 0px;
}
td, th {
vertical-align: top;
}
fieldset, img {
border: 0px;
}
caption, th {
text-align: left;
}
ally 2011.04.04

這適用於任何瀏覽器嗎?
這段語法放在body裡面嗎?還是head?
應該適用所有瀏覽器。CSS 要擺在 head 裡,而且要用 style 包起來:
<style>
body, p, div, span, ...... {
......
}
</style>
不過,最好是擺在單獨的 CSS 檔案,再在 head 裡面連結該檔案:
<link rel="stylesheet" type="text/css" href="*.css">
但是像妳是用人家提供的服務,外連 CSS 檔或許不太方便。如果 blogger 有提供什麼方法讓妳填 CSS 語法的話,應該就不用管是擺在哪裡,系統一定會幫妳擺對地方。
這堆語法既稱之為「摧毀」,它影響是很大的,比較適合在網站建立之初就這樣玩。若網站運行中還要試用,版面可能變動很大,尤其第一段那個 margin: 0px; padding: 0px; 以及 table 的語法相當兇狠。
我用blogger,但是自已的空間還在,外連沒問題的。有空我來試試。