2013-01-31 51 views
0

緊跟在我的<body>之後,作爲我向每個頁面添加的標題的一部分,是我網站的徽標。此<img>位於<a>標記內,指向我的索引頁。什麼是網站徽標的適當位置?

這裏是W3C validator

行21,列38:文檔類型不允許元素 「a」 在這裏;缺少「p」,「h1」,「h2」,「h3」,「h4」,「h5」,「h6」,「div」,「pre」,「address」,「fieldset」,「ins」 ,「刪除」開始標記

(我會過去的消息的其餘部分,但它的html標籤搞砸了,我不知道如何在塊引用內逃脫它們)。

什麼是放置徽標的適當位置?從邏輯上講,它不在一個部門內。製作一個空白的容器元素似乎相當愚蠢。

本地源:

... 
<body> 
<a title="Home" href="index.html"><img src="images/logo.png" id="logo"/></a> 
.... 

完整源:http://pastie.org/5998955

+0

張貼您的HTML,這樣我們就可以看到... –

回答

1

如果你想使用XHTML,那麼你將不得不包裝塊元素中的內聯元素來驗證。

你可以使用HTML5做你正在做的事情,並驗證它(但你必須添加alt屬性到你的圖像)。

Pastie:http://pastie.org/5998964

+1

在塊元素中包裝內聯內容和元素的要求適用於XHTML 1.0和HTML 4.01的嚴格版本,並且不適用於其中任一版本的過渡版本。 –

2

該錯誤是錯誤指你放置一個內聯塊元件,而不容器塊。

你必須做這樣的事情來得到它有效:

<body> 
<div><a title="Home" href="index.html"><img src="images/logo.png" id="logo"/></a></div> 

錯誤中明確指出這一點,甚至會告訴您什麼標記,你可以用它來解決此問題。

0

你的問題不是「哪裏把網站的標誌」,你的問題是基於你已經在你的腦袋部分指定的DOCTYPE HTML格式不正確。

A是一個內聯標記,需要用塊級標記(如P或DIV)包裝。

+1

讓一個div不會將任何東西組合在一起的問題是什麼? – Glycan