有沒有辦法擺脫在IE6中的<hr>
元素的邊框,而沒有將其包裝在另一個元素中?不幸的是,另一個要求是沒有黑客。使<hr>標籤在IE6中不可見?
我已經成功通過造型邊框這樣做對所有的瀏覽器:
hr.clear {
clear: both;
border: 1px solid transparent;
height: 0px;
}
但IE6依然呈現一個1像素的白線。
有沒有辦法擺脫在IE6中的<hr>
元素的邊框,而沒有將其包裝在另一個元素中?不幸的是,另一個要求是沒有黑客。使<hr>標籤在IE6中不可見?
我已經成功通過造型邊框這樣做對所有的瀏覽器:
hr.clear {
clear: both;
border: 1px solid transparent;
height: 0px;
}
但IE6依然呈現一個1像素的白線。
display: none
不起作用,因爲您完全從元素流中刪除<hr>
。這會導致它停止清理浮游物。
如果您完全隱藏它,那麼只需使用visibility: hidden
。它仍然會清除漂浮物,並且這適用於所有IE:
hr {
clear: both;
visibility: hidden;
}
邦上。謝謝! – montrealist 2010-08-17 14:27:56
明確:兩者都是我必須的,知名度:隱藏只是沒有工作.. – 2016-09-22 16:43:04
是的,我看到了。但我不需要一個圖像,我只是需要它完全不可見。 – montrealist 2010-08-13 15:52:04
..'display:none;'只會隱藏它,而海報想要的1px的垂直空間將會消失。 – Hristo 2010-08-13 16:22:34
我不需要隱藏它,只是爲了擺脫它的邊界。我需要它作爲結算要素。因此,'display:none'不是一個選項。 – montrealist 2010-08-16 17:45:52
所以問題是,IE不考慮<hr>
邊框爲 「邊界」。如果你設置
border: 1px #f0f solid;
......它會在現有的斜切邊界周圍添加紫紅色邊框。幸運的是,Firefox和IE8渲染了這一點,並意識到border: 0;
意味着我不需要邊框。不幸的是,IE 7和更低版本不這樣做。
因此,要回答你的問題...... 沒有 ...有沒有擺脫了邊框的<hr>
元素IE6的方式沒有包裝它在另一個元素或黑客攻擊(我的避風港根據我的經驗,沒有找到辦法做到這一點)。
如果您有純色背景色,請將<hr>
設置爲<div>
,將color
屬性設置爲背景色的屬性,或將圖像用於背景。
選項1:
<div style="height:1px; background: transparent;">
<hr style="display:none;" />
</div>
選項2:
hr.clear {
border: 0 none;
height: 1px;
color: #ffffff; /* if your bg is white, otherwise choose the right color */
}
選項3 ...檢查了這一點:http://blog.neatlysliced.com/2008/03/hr-image-replacement/
對不起,IE瀏覽器(舊版本)不玩規則。我希望這有幫助。
爲什麼不'border:none'?我認爲它甚至適用於IE6。 – zneak 2010-08-13 15:45:47
上述兩種解決方案在所有IE瀏覽器中都保留了1-px行。我在Windows上使用IETester和IE8進行測試。 – montrealist 2010-08-13 15:54:12