2011-01-13 29 views
3

我一直在玩html5,我注意到有時候頁面在dom(通過firebug查看)中顯示我的html不同於實際出現在我的html文件中。結果是一個元素以不同的方式被多次複製。我只注意到這個嵌套元素。html5元素重複自己的bug

例如:

<a href="#" class="block top-middle"> 
    <h5 class="title-top">TITLE</h5> 
    <img src=""path/to/img.png" alt="TITLE" /> 
</a><!-- .top-middle --> 

偶爾顯示爲:

<a class="block top-middle" href="#"> </a> 
<h5 class="title top"> 
    <a class="block top-middle" _moz-rs-heading="" href="#">TITLE/a> 
</h5> 

<a class="block top-middle" href="#"> 
    <img alt="TITLE" src="path/to/img.png"> 
</a> 

我真的不知道有什麼解決的辦法是,但我想知道是否有人經歷過這樣的故障。我已經仔細檢查了我的代碼中的所有內容,但無法找到任何破解的內容,並且在驗證時發生的頁面沒有任何問題。這特別令人沮喪,因爲它偶爾會發生一次。

謝謝!

* *編輯另外,我知道用錨標記這樣是無效的,但據我已經能夠告訴與我讀過關於HTML5它是一個錨點有效包裹內容*

回答

3

瀏覽器/渲染引擎是在HTML 5存在之前創建的,因此它遵守的規則是,內聯元素的錨不能包含塊級別的h5s。

這非常合理。除了等待並看看渲染引擎是否採用允許錨點嵌套塊級別的HTML 5規則(例如h5)之外,我認爲您不能真正做其他任何事情。

編輯:我假設你使用HTML 5 Doctype,雖然它可能不會有太多的方向。

編輯#2:這已作爲bug歸檔,即使我個人認爲它不應該。解決這個問題的方法似乎是將h5封裝在div中。

+0

非常感謝,我正在使用div的解決方法,它的工作原理(有時)我認爲所學到的教訓是使用xhtml,直到所有的扭結都真正用html5 – Thomas 2011-01-13 22:45:05