实用CSS自定义属性使用模式

我一直在玩CSS自定义属性,以发现他们的力量,因为浏览器支持终于在一个地方,我们可以使用他们在我们的生产代码。我用了很多不同的方法来使用它们,我希望你能像我一样对它们感到兴奋。他们是如此有用和强大! p>我发现CSS变量的使用倾向于分成不同的类别。当然,您可以随意使用CSS变量,但是在这些不同的类别中考虑它们可能有助于您理解使用它们的不同方式。 - 变量。基础,如设置,一个品牌color在需要的地方使用。 - 默认值。例如,一个默认border-radius可以稍后覆盖。 - 级联值。使用基于特定性的线索,例如用户首选项。 - 范围规则集。对单个元素的有意变化,类似于链接和按钮。 - - Mixins。规则集旨在将它们的值带到新的上下文。 - - 内联属性。从HTML中的内联样式传入的值。 - 我们将查看的示例是我创建并维护的名为Cutestrap的CSS框架中的简化和压缩模式。关于浏览器支持的简要说明当出现自定义属性时,我会听到两个常见的问题。第一个是关于浏览器支持。哪些浏览器支持它们?我们是否需要在不支持的地方使用回退?支持我们在这篇文章中所述内容的全球市场份额是85%。尽管如此,还是值得与您的用户群进行交叉引用,以确定渐进式增强对您的项目有多大意义以及在何处有意义。第二个问题始终是关于如何使用自定义属性。所以,让我们深入了解一下用法!模式1:变量我们要解决的第一件事是将品牌颜色的变量设置为自定义属性,并在svg元素上使用它。我们还将使用回退来覆盖后续浏览器上的用户。html {--brand-color: hsl(230, 80%, 60%);}.logo {fill: pink; /* fallback */fill: var(--brand-color);}在这里,我们在html规则集中声明了一个名为--brand-color的变量。这个变量是在一个总是存在的元素上定义的,所以它将级联到使用它的每个元素。长话短说,我们可以在.logo规则集中使用该变量。我们为后续浏览器声明了pink回退值。在第二个fill声明中,我们将--brand-color传递到var()函数中,该函数将返回为该自定义属性设置的值。模式就是这样:定义变量(--variable-name),然后在元素(var(--variable-name))上使用它。模式2:默认值我们在中使用的var()函数第一个示例还可以提供默认值,以防试图访问的自定义属性未设置。例如,假设我们为按钮提供圆角边框。我们可以创建一个变量——我们称之为--roundness——但我们不会像以前那样定义它。相反,我们将在使用变量时指定一个默认值。.button {/* --roundness: 2px; */border-radius: var(--roundness, 10px);}不定义自定义属性的默认值的用例是当您的项目仍在设计中,但您的功能今天就要到期时。这使得以后在设计更改时更容易更新值。因此,您为按钮提供了一个良好的默认值,满足您的截止日期,当--roundness最终设置为全局自定义属性时,您的按钮将免费获得该更新,无需返回。您可以在CodePen上编辑并取消对上述代码的注释,以查看设置--roundness时按钮的外观!模式3:层叠价值观既然我们已经掌握了基础知识,让我们开始构建我们欠自己的未来。我真的很怀念AIM和MySpace让用户在个人资料上用自定义文本和背景色来表达自己的个性。让我们把它带回来,建立一个学校留言板,让每个学生都可以设置自己的字体,他们发布的信息的背景色和文本色。基于用户的主题我们基本上是让学生创建一个自定义主题。我们将在数据属性规则集中设置主题配置,以便任何使用主题的子元素(本例中为.message元素)都可以访问这些自定义属性。.message {background-color: var(--student-background, #fff);color: var(--student-color, #000);font-family: var(--student-font, \"Times New Roman\", serif);margin-bottom: 10px;padding:>Here\"s the markup:We have set all of our student themes using [data-student-theme]学生主题规则集的选择器。如果为该学生设置了background、color和font的自定义属性,则它们将应用于我们的.message规则集,因为.message是包含data属性的div的后代,而data属性又包含要使用的自定义属性值。否则,将使用我们提供的默认值。可读主题覆盖

admin_action_{$_REQUEST[‘action’]}

do_action( "admin_action_{$_REQUEST[‘action’]}" )动作钩子::在发送“Action”请求变量时激发。Action Hook: Fires when an ‘action’ request variable is sent.目录锚点:#说明#源码说明(Description)钩子名称的动态部分$_REQUEST['action']引用从GET或POST请求派生的操作。源码(Source)更新版本源码位置使用被使用2.6.0 wp-admin/admin.php:...

日期:2020-09-02 17:44:16 浏览:1127

admin_footer-{$GLOBALS[‘hook_suffix’]}

do_action( "admin_footer-{$GLOBALS[‘hook_suffix’]}", string $hook_suffix )操作挂钩:在默认页脚脚本之后打印脚本或数据。Action Hook: Print scripts or data after the default footer scripts.目录锚点:#说明#参数#源码说明(Description)钩子名的动态部分,$GLOBALS['hook_suffix']引用当前页的全局钩子后缀。参数(Parameters)参数类...

日期:2020-09-02 17:44:20 浏览:1032

customize_save_{$this->id_data[‘base’]}

do_action( "customize_save_{$this->id_data[‘base’]}", WP_Customize_Setting $this )动作钩子::在调用WP_Customize_Setting::save()方法时激发。Action Hook: Fires when the WP_Customize_Setting::save() method is called.目录锚点:#说明#参数#源码说明(Description)钩子名称的动态部分,$this->id_data...

日期:2020-08-15 15:47:24 浏览:775

customize_value_{$this->id_data[‘base’]}

apply_filters( "customize_value_{$this->id_data[‘base’]}", mixed $default )过滤器::过滤未作为主题模式或选项处理的自定义设置值。Filter Hook: Filter a Customize setting value not handled as a theme_mod or option.目录锚点:#说明#参数#源码说明(Description)钩子名称的动态部分,$this->id_date['base'],指的是设置...

日期:2020-08-15 15:47:24 浏览:866

get_comment_author_url

过滤钩子:过滤评论作者的URL。Filter Hook: Filters the comment author’s URL.目录锚点:#源码源码(Source)更新版本源码位置使用被使用 wp-includes/comment-template.php:32610...

日期:2020-08-10 23:06:14 浏览:903

network_admin_edit_{$_GET[‘action’]}

do_action( "network_admin_edit_{$_GET[‘action’]}" )操作挂钩:启动请求的处理程序操作。Action Hook: Fires the requested handler action.目录锚点:#说明#源码说明(Description)钩子名称的动态部分$u GET['action']引用请求的操作的名称。源码(Source)更新版本源码位置使用被使用3.1.0 wp-admin/network/edit.php:3600...

日期:2020-08-02 09:56:09 浏览:848

network_sites_updated_message_{$_GET[‘updated’]}

apply_filters( "network_sites_updated_message_{$_GET[‘updated’]}", string $msg )筛选器挂钩:在网络管理中筛选特定的非默认站点更新消息。Filter Hook: Filters a specific, non-default site-updated message in the Network admin.目录锚点:#说明#参数#源码说明(Description)钩子名称的动态部分$_GET['updated']引用了非默认的...

日期:2020-08-02 09:56:03 浏览:834

pre_wp_is_site_initialized

过滤器::过滤在访问数据库之前是否初始化站点的检查。Filter Hook: Filters the check for whether a site is initialized before the database is accessed.目录锚点:#源码源码(Source)更新版本源码位置使用被使用 wp-includes/ms-site.php:93910...

日期:2020-07-29 10:15:38 浏览:809

WordPress 的SEO 教学:如何在网站中加入关键字(Meta Keywords)与Meta 描述(Meta Description)?

你想在WordPress 中添加关键字和meta 描述吗?关键字和meta 描述使你能够提高网站的SEO。在本文中,我们将向你展示如何在WordPress 中正确添加关键字和meta 描述。为什么要在WordPress 中添加关键字和Meta 描述?关键字和说明让搜寻引擎更了解您的帖子和页面的内容。关键词是人们寻找您发布的内容时,可能会搜索的重要词语或片语。而Meta Description则是对你的页面和文章的简要描述。如果你想要了解更多关于中继标签的资讯,可以参考Google的说明。Meta 关键字和描...

日期:2020-10-03 21:18:25 浏览:1619

谷歌的SEO是什么

SEO (Search Engine Optimization)中文是搜寻引擎最佳化,意思近于「关键字自然排序」、「网站排名优化」。简言之,SEO是以搜索引擎(如Google、Bing)为曝光媒体的行销手法。例如搜寻「wordpress教学」,会看到本站的「WordPress教学:12个课程…」排行Google第一:关键字:wordpress教学、wordpress课程…若搜寻「网站架设」,则会看到另一个网页排名第1:关键字:网站架设、架站…以上两个网页,每月从搜寻引擎导入自然流量,达2万4千:每月「有机搜...

日期:2020-10-30 17:23:57 浏览:1262