<a href=""> tag surrounding multiple elements somehow</a>

时间:2011-11-21 19:22:16

标签: html

不知何故,一个href也围绕'更新'图像但是href 显然已使用</a>标记关闭。它在列表<li>中,但我不知道如何或 为什么会这样。有没有人在链接标记围绕多个元素之前遇到过这个问题?

<a href="cart.php?delete">

<img border="0" src="post_delete_icon.png">
</a>
<br>
<br>
<input type="hidden" value="1" name="item_qty[96]" size="4">
<input id="qtyx" type="text" value="1" name="qtyx" size="4">
<input type="hidden" value="96" name="productidx">
<input type="image" border="1" src="update.png">

1 个答案:

答案 0 :(得分:2)

您使用的是哪种doctype?

根据您的标记,您应该使用HTML5 doctype。如果您对此不熟悉,请将其放在html标记的顶部。

<!DOCTYPE html>

并将您的代码修改为:

<a href="cart.php?delete">
    <img src="post_delete_icon.png" alt="delete item">
</a>

<br>
<br>
<input type="hidden" value="1" name="item_qty[96]">
<input id="qtyx" type="text" size="4" value="1" name="qtyx">
<input type="hidden" value="96" name="productidx">
<input type="image" src="update.png" alt="update cart">

修改
由于您使用的是严格的doctype,因此需要结束标记并遵循严格的doctype规则。通过XHTML/HTML markup validator运行代码,以确保您的代码符合规定。

因为您正在编写HTML标记,所以您希望使用以下doctype

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

执行此操作后,您需要删除代码中的所有border="0"属性。使用strict doctype时,为CSS保留这些类型的东西。除严格的文档类型外,您还需要为alt代码提供<img>值。这是为了提高可用性并在图像无法加载时对容错进行排序。

您还可以使用您正在使用的XHTML文档类型,但您必须更改标记才能遵循这些规则。每个doctype都有自己的规则,在项目中间更改文档类型可以完全改变浏览器呈现页面的方式。

有效的XHTML严格代码:

<a href="cart.php?delete">
    <img src="post_delete_icon.png" alt="delete item"></img>
</a>
<br />
<br />
<input type="hidden" value="1" name="item_qty[96]"></input>
<input id="qtyx" type="text" value="1" name="qtyx" size="4"></input>
<input type="hidden" value="96" name="productidx"></input>
<input type="image" src="update.png"></input>