網頁設計外邊距很有用,但同時也存在很多問題——毫不奇怪,這些問題都圍繞著Netscape Navigator 4.x(NN4.X)。
第一個問題是,Navigator 4.x會把外邊距規(guī)則指定的外邊距增加到其默認外邊距,而不是用其取代默認值。例如,請考慮:
h1 {margin-bottom:0;}
p {margin-top:0;.}
NN4.X顯示元素時其間通常有空白,因為它將0增加到其自己的默認外邊距。如果想A蓋這個空白,可以使用負外邊距,如將段落的上外邊距設置為-1em。但網頁設計人員用這種解決方法的問題是缺乏通用性。如此一來,網站建設CSS兼容的瀏覽器就會使文本重疊,因為這些瀏覽器會替換段落的上外邊距(而不是使之相加)。
遺憾的是,還有更糟糕的問題。如果對行內元素應用外邊距,布局將或多或少地過于分散。NN4.X認為所有元素(不論是否是行內元素)的外邊距都相對于瀏覽器窗口的左邊界。這絕對是錯誤的。遺憾的是,如果網站建設人員有很多使用NN4.X的訪問者,在行內元素上使用外邊距就很危險,決不能等閑視之。好在對NN4.X隱藏CSS很容易,從而可以對文檔設置樣式,而不必擔心NN4.X破壞樣式(當然,這里假設你仍然關心頁面在NN4.X中的外現)。