当HTML 中有多个class属性会出现什么问题

更新于 2022年1月9日 wordpress教程

当一个元素有多个class属性时会发生什么?

<div id="test" class="one two three" class="four">

我正在尝试向post_class();的输出添加一个类post_class(); 在 WordPress 插件中,但函数本身正在创建整个部分class="one two three"

相当于class="one two three four"吗? 还是第一次或第二次获胜? 或者它是未定义的行为,在这种情况下主要浏览器会做什么?

如果您知道将类添加到此代码段(WordPress 插件)的正确方法,那么也将不胜感激!

<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>

解决方案

当一个元素有多个类属性时会发生什么?

当为单个元素多次声明属性时(顺便说一下,这是无效的 HTML),行为方面的第一个值将覆盖同一属性的所有后续值。 因此,在这种情况下,您的元素将只有类one two three

这种行为在HTML5 规范 8.2.4.35 属性名称状态中进行了解释,“…如果 [元素] 上已经有一个具有完全相同名称的属性,那么这是一个解析错误,必须删除新属性……”

如果您知道将类添加到此代码段(WordPress 插件)的正确方法,那么也将不胜感激!

通常,如果您需要向 WordPress 帖子动态添加自定义类,您可以连接post_class过滤器并根据需要操作$classes数组。 这是它在我的主题中的大致样子:

function nv_post_class( $classes ) {
    // Most recent post on the front page
    global $count;
    if ( is_home() && 1 == $count )
        $classes[] = 'latest-post';

    return $classes;
}

add_filter( 'post_class', 'nv_post_class' );

如果您只需要添加一个或多个静态类,请将它们作为空格分隔的字符串直接传递给post_class()

<div id="post-<?php the_ID(); ?>" <?php post_class( 'myclass1 myclass2' ); ?>>

然后文档将无效,浏览器将尝试执行错误恢复。

HTML 5 规范

如果属性的名称已经在属性列表中,则返回到标记为属性的步骤。

因此,如果正在使用 HTML 5 解析器,则应应用第一个属性。

你可能还喜欢下面这些文章

wprec推荐插件模板变量文档以及样式推荐wprec推荐插件模板变量文档以及样式推荐

wpac是一款wordpress自动配图插件,可以丰富文章内容,对提升排名有很大帮助。p style=”font-size:18px;”>你可能还喜欢下面这些文章<p>{excerpt}<

wprec - wordpress相关文章插件,最好的相似推荐插件wprec – wordpress相关文章插件,最好的相似推荐插件

一个理想的相关文章推荐插件应该是什么样子的?wprec就是一个能够提升用户体验,提升搜索引擎排名的相关文章推荐插件!插件的后台在 WP工具箱-文章推荐,进入即可看到设置。

Wordpress 主循环 - 如何在指定文章数之前添加classWordPress 主循环 – 如何在指定文章数之前添加class

有没有办法在 WordPress 循环代码中获取多个项目: if ($count<a href=”https://stackoverflow.com/questions/19303556/wordpress-loop-how-to-co

wordpress怎么调用特定文章列表wordpress怎么调用特定文章列表

a href=”< //cat=1为调用ID为1的分类下文章”title=”<

B2缩略图修改B2缩略图修改

主题 Modules/Common/Post.php 467 行isset($post->ID)) return ”; return get_wpac_thumbnail($post_id);

如何自动为WordPress文章添加特色图像如何自动为WordPress文章添加特色图像

add_action(‘the_post’, ‘wpforce_featured’);

好看 (0) 很好看 (0) 非常好看 (0)