border-color設置爲transparent,但卻不透明的原因

border-color:transparent;

CSS中這樣設置,發現邊框還是有顏色,爲什麼呢?

W3C有這樣的解釋:

CSS 規範指出,邊框繪製在“元素的背景之上”。這很重要,因爲有些邊框是“間斷的”(例如,點線邊框或虛線框),元素的背景應當出現在邊框的可見部分之間。

CSS2 指出背景只延伸到內邊距,而不是邊框。後來 CSS2.1 進行了更正:元素的背景是內容、內邊距和邊框區的背景。大多數瀏覽器都遵循 CSS2.1 定義,不過一些較老的瀏覽器可能會有不同的表現。


因爲邊框是繪製在背景之上的,所以,如果設置了元素的背景色,那視覺上就會看到邊框有顏色,是背景色。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章