2011-11-23 46 views
0

我正在處理一個分頁類的東西,它只是一個浮動的錨標籤裏面的div。現在,在IE7中,它在這裏和那裏插入空的文本節點,看似隨意,這打破了佈局。IE7在浮動元素之間創建空文本筆記

結果:它的外觀在不同的頁面 Example of how it looks on different pages. Note the empty text nodes.

例。請注意空文本節點。整潔,嗯?

CSS:

.nwsPaging { 
    width:200px; /* Have also tried fluid size */ 
    height:30px; 
    display:block; } 

.nwsPaging a {  
    width:auto; /* Have also tried fixed size */ 
    margin:0 0 0 1px; 
    padding:2px 8px; 
    border:solid 1px #ccc; 
    background:#eee; 
    float:left;  
    line-height:20px;   
    display:block; 
    zoom:1; 
    vertical-align:top; /* Should not do any difference */ } 

.nwsPaging a:hover, .nwsPaging .isActive { 
    background:#D150A1; 
    color:#fff; 
    display:block; /* Should be redundant, but just in case */ 
    zoom:1; } 

正如你所看到的,我已經嘗試了一些不同的東西,包括設置在容器和浮動標籤都有效固定寬度,再加上給它的hasLayout。 .isActive類沒有什麼特別之處,如果我從不添加類,它沒有任何區別。

我在不同的系統中有完全相同的問題,但我不記得我是如何修復它的。我無法訪問代碼,檢查員也沒有幫助。

獎勵信息: 該網站建立在HTML5Boilerplate,它使用normalize reset CSS

編輯: 標記是非常簡單的,雖然標籤是動態創建的,應該是沒有換行符這有可能創建空文本節點。

應該如何呈現標記爲解析:

<div class="nwsPaging clearfix"> 
    <a href="foo">Previous</a> 
    <a href="bar">1</a> 
    <a href="bar" class="isActive">2</a> 
    <a href="bar">3</a> 
    <a href="baz">Next</a> 
</div> 
+0

我找不到前段時間看過的文章,檢查是否記得正確,但是如果您嘗試顯示:block for the containing div,那麼它不應該(我認爲)爲文本節點留出空間? – Helen

+0

你可以製作[jsFiddle](http://jsfiddle.net/)或[JS Bin](http://jsbin.com/)測試用例嗎? – thirtydot

+0

@Helen 我已經嘗試使父級塊元素(雖然作爲一個div,它應該已經是),以及設置固定和流體寬度,我試過漂浮它,使clearfixes遍佈,設置位置等 – Nix

回答

0

這實際上可能在你的代碼行分解引起的。

剝去它們,看看它是否仍然如此。

+0

我看到你來自哪裏,但這不應該成爲這種情況下的問題。標籤是動態創建的,標記中不應該有換行符。 – Nix

+0

重新訪問後,似乎很可能是問題所在,但它是在CMS中動態創建的,因此我無法控制它。不幸的是,他們不願意修復這個非常小的錯誤。 :/ – Nix

相關問題