我工作正常但是通过验证器(validator.w3.org)放置代码会出现错误
错误:在此上下文中,元素p不允许作为元素跨度的子元素。 (抑制此子树中的更多错误。)
<!-- mobile button -->
<a class="btn btn-warning lg hidden-sm hidden-md hidden-lg" role="button" href="http://www.website.com">
<span>
<i class="fa fa-shopping-cart fa-pull-left black" aria-hidden="true"></i>
<p class="black">Visit Store</p>
</span>
</a>
答案 0 :(得分:1)
您不希望在'inline'元素中包含'block'元素。该<p>
标记可能是由span或其他内联元素组成的。
答案 1 :(得分:1)
正如错误所述,<p>
不是<span>
的有效子项。 <p>
是块级元素,<span>
是内嵌元素。您不能在内联元素中包含块元素。
反转您的两个代码,或在<span>
内使用<span>
。
有关详细信息,建议您查看WhatWG documentation,其中指出<span>
代码只应在预期 phrasing 内容时使用。
答案 2 :(得分:1)
当我输入&lt;&#39;&#39;&gt;时,为什么会导致错误?在&lt;&#39; span&#39;&gt;?
内
旁注: - &gt;我不得不在上面的paragraph
标签周围加上引号,否则会产生换行符。同样适用于span
标记,但这会导致不同的行为。
推理错误:
内联元素中只能包含内联元素。 span
是内联元素。作为块元素的<p>
等标记不能进入内联元素。
这个错误是什么意思?
有关elements
可以嵌套在其他elements
内以及何时允许这种情况发生的规则。
最值得注意的是,<div>
等内联元素中不允许使用块级元素,例如<span>
。
此错误告诉您标记在<p>
中包含<span>
元素,并且不允许这样做。
这是一个LINK,它准确地解释了您对W3C验证器错误的询问。
答案 3 :(得分:1)
请参阅此堆栈溢出帖子:Can <span> tags have any type of tags inside them?
基本上,因为span
标记是内联元素,所以它们应该只包含其他内联元素,而不是块元素。
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/span