為什麼 HTML 中的 a 標籤樣式中設置顏色(color)有效,而設置寬度(width)無效?

今天做個網頁,想在某個超鏈接內用style設置它的寬度,但居然無效,換了個顏色的設置卻有效,&有效,&無效。從來沒有遇到過這種情況,請問是什麼原因?


因為 a 標籤的默認 display 方式是 inline,不屬於用戶可設置高寬的塊級元素。

建議修改 style 為

display:inline-block; *zoom:1; *display:inline;

後面兩個加 * 的 style 是為了兼容早期版本的 IE。

因為早期版本 IE 不支持 inline-block 屬性。

如果只是單純修改 style 為 block,等於在 a 標籤前後插入了換行符,可能違背了你的初衷。


不只是 & 標籤,所有的 inline 元素都沒有 width 和 height。

可以設置 display: block; 把 inline 元素當作 block 元素來處理,再設置 width 和 height。

參考鏈接:

Does height and width not apply to span?


好吧, 差點誤人子弟, 剛自己試了下。

應該是跟a標籤的display的默認值掛鉤。

你將a標籤的display設為block就沒問題了。


推薦閱讀:

TAG:網頁設計 | 前端開發 | HTML | 萬維網聯盟W3C | HTMLCSS |