shray 寫:
to wini兄:
我想我說得不清楚,我也不太懂如何說明我的要求,我就簡單的說說問題所在好了
我發覺在firefox底下,在一個圖片和下一個圖片之間,總是有一條空隙,我在IE上可以做到上下兩圖緊貼著,就是firefox一加上w3c的宣告,這條空隙就走了出來了,現在就是我想圖興圖之間有4px的距離,但結果firefox下,這個距離因為加了那自帶的空隙就變成遠遠不止4px了,這個問題就是我一直搞不好的呢
另外請問一下wini兄,你給的一段代碼就是個整貼上css就可以了?需不需要改改的呢?
嗯……所以說,你想要的是「首頁圖跟選單距離 4px 高度」嗎?
我從頭開始說一下。
首先你貼上 CSS 的地方沒錯,不過 CSS 的優先權設定你要搞懂一下,放在 CSS 檔案越後面的越優先,除非你在指定完屬性的值後,接個 !important 才會把最終顯示的優先權拉高。
代碼:
.ForExample { color:blue !important /*提高優先權*/ ; }
.ForExample { color:red /*雖然放在後面但是優先權不比 !important 高*/ }
然後是我上面提到的 CSS hack ,你只要自己調整那兩行 margin 的值,到自己覺得 IE 跟 Fx 都一致了就好──不過我上面只是單純用 menu 舉例而已,實際上要用啥,請先看完這篇再說。
然後我覺得你的 HTML 寫太複雜了,以首頁圖跟選單為例,其實根本不需要用到 table 元素,用 h1 跟 ul 元素也就夠了;而整個網頁左右的留白,也只要在 body 上放 CSS 的 padding 屬性就好;然後更麻煩的問題是,你的 CSS 「寫得到處都是」,可以的話,全放進 CSS 檔案,並加上適上的備註文字(用 /* 跟 */ 包住的),維護時會比較方便。
總之畫表格的地方可以靠程式,不過其它小地方靠編輯原始碼可能會方便點,所以可能要麻煩你先想辦法把首頁圖跟選單的 HTML 簡化一下。( body 的留白問題你可以看看要不要選擇在 body 用 CSS 處理)
HTML 部分的範例:
代碼:
<h1><span>hkbbs II</span></h1>
<ul id="TopMenu">
<li><a href="Go">xxx</a></li>
<li><a href="Back">xxx</a></li>
</ul>
CSS 部分的範例:
代碼:
h1 {
background : url("xxx") no-repeat
;
width : 800px
;
height : 400px
;
margin : 0 auto 4px auto
}
h1 span {
display : none
}
#TopMenu {
/*請隨自己的意寫*/
}
其中 h1 的地方可以放文字,或是放圖片都行,記得改成圖片 img 元素後要加 alt 屬性寫替代文字就好。(當然改成圖片後也要記得拿掉 CSS 中的 background 啦)
(不過把 CSS 部分弄出來獨立檔案後,你原本用的編輯軟體就會碰上麻煩了,要不就是只拿來純畫 HTML ,不要讓它修改你的 CSS 檔,要不就是得想辦法搞懂這編輯軟體會怎麼修改 CSS ……)
(另外,因為我認為你擁有修改該網頁全部的 HTML 跟 CSS 檔案的權限,所以就沒認真去研究為什麼「空隙」會變大的問題了,因為那件事我上次碰到是好幾年前了,沒做筆記所以也沒辦法想出來原因來,只能請你簡化 HTML 再說了……)