![](/img/trans.png)
[英]Html Validation Column 19: An body start tag seen but an element of the same type was already open
[英]HTML5 Validation Error: body start tag seen but an element of the same type was already open
我希望有人可能知道如何解決這個 HTML5 驗證錯誤。 當我嘗試使用http://validator.w3.org驗證我的頁面: http : //blog.genesispetaluma.com 時,它給了我以下錯誤代碼:
錯誤第 90 行,第 63 列:看到正文開始標記,但已打開相同類型的元素。
<body class="home blog single-author two-column right-sidebar">
我將此錯誤解釋為我在代碼中有兩個正文標記。 但是,我到處搜索,只能找到一個<body>
(錯誤引用的那個)和一個</body>
。 誰能告訴我如何解決這個錯誤?
我有一個類似的問題,但是<head>
,給出了以下 W3C 標記錯誤:
看到了一個開頭標簽,但相同類型的元素已經打開
我有這個代碼:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<head>
當它應該是:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
我知道這是錯誤的,但有時很難發現,因為您已經習慣了 99% 的標題代碼都是正確的。 我顯然剪切 n 粘貼了一些代碼,結果放在錯誤的地方。
我知道,這不是針對您的問題,因為您的錯誤與<body>
標簽有關,但這是您正在尋找的類型。 也許你身體的某個地方有一個<link>
或<meta>
標簽,這意味着在<head>
。 沒有看到你的代碼,很難給你一個完美的答案。
可能是因為:
<div id="wrapFix">
<div id="drawLogo1">
<div id="drawLogo2">
<img src="http://genesispetaluma.com/img/logoNew.png" alt="Genesis Fitness G stylelogo">
</div>
</div> <!-- end of drawLogo1 -->
位於結束頭標簽和開始身體標簽之間。 即第 81-87 行
您正在使用的小部件之一(我相信像 facebook 的按鈕)是將 HTML 插入到頁面中,並且該 HTML 的一部分是正文標記。 不確定您是否可以對此采取任何措施,但我認為這就是引發錯誤的原因。 看起來像這樣:
<body class="plugin transparent_widget ff4 win Locale_en_US">
</html>
</iframe>
我收到此錯誤:
看到了一個開頭標簽,但相同類型的元素已經打開
我讀了這篇文章,然后我注意到我的標簽列在這樣的頭部之前。
<title>Home</title>
<head>
</head>
it should have been
<head>
<title>Home</title>
</head>
據我所知,它發生在下面所說的場景中 -
<head>
想着<header>
標簽。<header>
、 <nav>
、 <section>
或<footer>
標簽位於<body>
標簽之外時。因此,在創建頁面后,您可以在此處驗證這些更改。
我收到相同的錯誤消息:檢查<head>
和<body>
之間是否顯示任何 body-inside <element>
<body>
,如上所述。
我的錯誤是由具有絕對位置的<div>
標記引起的,它在開發過程中顯示一些頁面信息 - 只是代碼中錯誤位置上的一行。
就我而言,它是 facebook 標簽
<div id="fb-root"></div>
它位於頁面的<head>
。
將其移至相關頁面的<body>
(全局不需要)對其進行排序。 所以是的,上面由 Emil H 提供的答案是正確的。
嗨,在我的情況下,hgroup 標簽是我遇到驗證錯誤的原因,我從 head 標簽中刪除了這個標簽,然后將它放在 body 標簽之后,文檔現在有效。
只是為了記錄,我遇到了完全相同的問題,似乎在 head 元素中包含一些 php 文件奇怪地給出了問題,即使 Firefox 的視圖源沒有打印這樣的 php 代碼或標簽
<head>
<? include("./file.php"); ?>
<title><? echo $title ?></title>
</head>
解決使用:
<? include("./file.php"); ?>
<!DOCTYPE html>
<html>
<head>
<title><? echo $title ?></title>
</head>
<body>
...
...
如果您的 head 和 body 問題都顯示驗證錯誤,只需從 head 中刪除顯示文本並將其保留在 body 中。我最近遇到了這個問題。 例如,您有文本要顯示在頭部內部的標題中,只需從頭部刪除標題並將其保留在正文中......問題已解決......謝謝
另請記住,如果您從 slack 等內容復制/粘貼代碼,它們將具有用於格式化的“特殊字符”(通常是不可見的),這可能會導致該問題。
這是一個演示視頻: https : //drive.google.com/file/d/1OJS15zmSvzhVXVLcQGGhePZGNCxWHocN/view
如果您放入限制在那里的<head>
標記,則可能會發生此錯誤。 例如:
<head> <audio preload="auto" class="menu-beep" id="sound-01"> <source src="sound-01.mp3"> </audio> </head>
在這種情況下,標簽將立即在瀏覽器內存中打開。 但是稍后瀏覽器會找到打開頁面的body標簽。 這就是事實證明有第二個身體標簽的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.