Css 包装<;a>;周围<;部门>&书信电报;figcaption>;无效

Css 包装<;a>;周围<;部门>&书信电报;figcaption>;无效,css,html,Css,Html,我有一个带有网格项的网格,我将它们包装在标记中,这样整个元素都会指向链接。我真的想要有效的html <!--Grid Item--> <figure class="grid-item"> <span> <a href="#"> <img src="images/image.jpg">

我有一个带有网格项的网格,我将它们包装在标记中,这样整个元素都会指向链接。我真的想要有效的html

          <!--Grid Item-->
          <figure class="grid-item">
              <span>
                <a href="#">
                  <img src="images/image.jpg">
                  <figcaption>
                      <h1>Title</h1>
                      <p>Description</p>
                  </figcaption>
                  <div class="item-background"></div>
                </a>
              </span>
          </figure>
          <!--End Grid Item-->

在某些悬停效果中,项目背景和菲卡普顿位于图像上方,许多图像被曝光,没有链接。 我用这个结构创造了很多悬停效果。我知道这在html5中是有效的,但我想在html4验证器中实现无错误。另外,我听说这是一个坏习惯。如果可能的话,我不想添加任何javascript

我应该保持现在的状态,还是有一种有效的方式不影响设计

我知道这在html5中是有效的

然后,您可以通过将文档标记为HTML5使其有效

…如果这是正确的话,你也可以。您还需要移动锚点,使其完全位于
figcaption
内或完全位于
图的周围

但我想在html4验证程序中实现无错误

那不会发生

  • HTML4不支持锚定中的块元素
  • HTML4不支持图形元素
  • HTML4不支持figcaption元素
如果您想使用本世纪引入HTML的特性,那么您需要使用本世纪编写的HTML规范

如果可能的话,我不想添加任何javascript

使用JavaScript注入内容而不是将其放入HTML将使HTML有效。但这将是一个可怕的黑客行为,它忽略了首先使用验证器的意义

我知道这在html5中是有效的

然后,您可以通过将文档标记为HTML5使其有效

…如果这是正确的话,你也可以。您还需要移动锚点,使其完全位于
figcaption
内或完全位于
图的周围

但我想在html4验证程序中实现无错误

那不会发生

  • HTML4不支持锚定中的块元素
  • HTML4不支持图形元素
  • HTML4不支持figcaption元素
如果您想使用本世纪引入HTML的特性,那么您需要使用本世纪编写的HTML规范

如果可能的话,我不想添加任何javascript


使用JavaScript注入内容而不是将其放入HTML将使HTML有效。但这将是一个可怕的黑客行为,它忽略了首先使用验证器的意义。

在符合W3C标准的
HTML4.01
XHTML1.0
中,
是一个内联元素

它不能包含嵌套的块级元素


要将此验证为符合W3C标准的
HTML4.01
的唯一方法是在图像周围、
周围、在
等内部包含重复的锚定。

在符合W3C标准的
HTML4.01
XHTML1.0
中,
是一个内联元素

它不能包含嵌套的块级元素


要将此验证为符合W3C标准的
html4.01
的唯一方法是在图像周围、
周围、在
内部等处包含重复的锚定。

如果您希望此验证为有效的html4,唯一的选择是根本不使用
figure
figcaption
,也不要在
a
中阻塞元素。顺便说一句,我不确定你到底指的是什么。如果有人告诉你不要使用某个东西,因为它是无效的HTML4,或者因为它是无效的XHTML,请忽略它们。我想在HTML4验证程序中实现无错误-我可以问一下为什么吗?“你支持一个真正的老浏览器吗?”李斯特先生我在谷歌上搜索了这个话题,并得到了各种各样的评论。如果这是可以接受的,并且没有被轻视,那么我就满意了。@BSMP ie9+、chrome、firefox、Safari如果你想让它成为有效的html4,唯一的选择就是根本不使用
fig
figcaption
,也不阻止
a
中的元素。顺便说一句,我不确定你到底指的是什么。如果有人告诉你不要使用某个东西,因为它是无效的HTML4,或者因为它是无效的XHTML,请忽略它们。我想在HTML4验证程序中实现无错误-我可以问一下为什么吗?“你支持一个真正的老浏览器吗?”李斯特先生我在谷歌上搜索了这个话题,并得到了各种各样的评论。如果这是可以接受的,并且没有被轻视,那么我就满意了。@BSMP ie9+、chrome、firefox、safariI仍然会出错。错误:元素figcaption在此上下文中不允许作为元素a的子元素。@CarlosSalazar-Ah。我不应该不相信你的声明,那是允许在HTML中使用的:)我刚刚检查了规范。Figcaption必须是该图形的子对象(而不是另一种后代)。将锚围绕整个对象,或围绕Figcaption的内容。我仍然会出错。错误:元素figcaption在此上下文中不允许作为元素a的子元素。@CarlosSalazar-Ah。我不应该不相信你的声明,那是允许在HTML中使用的:)我刚刚检查了规范。Figcaption必须是该图形的子对象(而不是另一种后代)。围绕整个内容或Figcaption的内容包装锚。