2010-09-15 83 views
4

是否alright將div標記放置在錨標記中? div的內容是否會將頁面重定向到錨標籤的href?XHTML:將DIV放置在A標記中

+1

如果你把一個行內元素內塊級元素你的XHTML不會驗證。 – Kevin 2010-09-15 23:14:04

+0

謝謝凱文。 – Francisc 2010-09-15 23:30:12

回答

9

將div標籤放在錨標籤內是否正確?

是的,如果:

  1. 您正在使用HTML5/XHTML5;和
  2. 錨標記不在內聯上下文中。即僅允許短語內容的元素的後代。

否則沒有。

在HTML5/XHTML5中,<a>元素不僅僅是一個內聯元素,因爲它在HTML4/XHTML1中。相反,它有一個透明的內容模型,這意味着其內容的驗證規則與它不存在的驗證規則相同。

因此,例如

<div> 
    <div>Hello World</div> 
</div> 

是有效的,所以

<div> 
    <a href="#"> 
     <div>Hello World</div> 
    </a> 
</div> 

過。

<p> 
    <div>Hello World</div> 
</p> 

是無效的,所以

<p> 
    <a href="#"> 
     <div>Hello World</div> 
    </a> 
</p> 

不是非此即彼。

+0

感謝您提供額外的說明。 – Francisc 2010-09-16 12:19:28

1

不,那肯定是無效的HTML。

-div的內容將頁面重定向到錨標籤的href? 我不太確定你的意思。 但它不是一個錨點跟隨的div的內容,而是錨點的href屬性。

+0

好的,謝謝。沒有塊內元素,得到它。 – Francisc 2010-09-15 23:29:55

+0

@Francisc - 更具體地說,內聯元素中沒有塊級元素。以下是內聯元素的一些示例:a,strong,span – 2010-09-15 23:50:51

1

如果你想達到什麼是塊級別的鏈接,你可以簡單地使用CSS:

a.block { 
    display: block; 
    /* everything else */ 
} 

<a class="block">...</a>