Css 电子邮件使用[class=“classname”优于.classname的好处

Css 电子邮件使用[class=“classname”优于.classname的好处,css,css-selectors,Css,Css Selectors,为什么要将按属性选择的类[class=“classname”]用于按类选择的中?在考虑跨电子邮件客户端兼容电子邮件时,这有什么好处吗 编辑:我完全了解每个选择器是如何工作的,但是,我正在试图弄清楚是否有一个原因,即由于css和电子邮件客户端的问题,出于兼容性原因(特别是在由一个类组成的类属性的情况下),按属性选择会比按类选择使用。这个问题是在查看一个响应电子邮件模板后出现的,该模板明确使用了按属性选择类而不是按类选择 e、 g .red text{color:red} [class=“red t

为什么要将按属性选择的类
[class=“classname”]
用于按类选择的中?在考虑跨电子邮件客户端兼容电子邮件时,这有什么好处吗

编辑:我完全了解每个选择器是如何工作的,但是,我正在试图弄清楚是否有一个原因,即由于css和电子邮件客户端的问题,出于兼容性原因(特别是在由一个类组成的类属性的情况下),按属性选择会比按类选择使用。这个问题是在查看一个响应电子邮件模板后出现的,该模板明确使用了按属性选择类而不是按类选择

e、 g

.red text{color:red}
[class=“red text”]{color:red}
这个文本是红色的

这些是不等价的

[class=“a”]
将匹配
,但不匹配

.a
将同时匹配

例如:

div.green{
颜色:#0f0;
}
div[class=“red”]{
颜色:#f00
}
绿色
绿色与其他类
--
红色

红色与其他类-我被破坏了
。classname
将匹配此元素,但
[class=“classname”]
将不匹配

<div class="foo classname other">
    hello world
</div>

你好,世界

Hmmm…感觉像是某人的家庭作业。就性能而言,使用它总是更好。按属性选择类名需要更多的计算时间。您的表单太简单了,这种形式的选择可以用来过滤结果,但你拥有的是最简单的选择form@Paulie_D:未看到任何家庭作业(请参阅HTML电子邮件;)如果有任何兼容性方面的好处,我会感到惊讶——众所周知,电子邮件客户端对CSS的支持很差(不包括使用完全支持CSS的呈现引擎(如Thunderbird和Apple Mail)的客户端),而且对于基本的电子邮件客户端来说,属性选择器往往被认为太多了。但是我知道什么?我很感激你的回答,然而,这不是问题所在。@Kudla69是的,是的。您问:“为什么要使用按属性选择的类[class=”classname“]来代替按类选择的类。classname?”我的回答是因为它们做不同的事情。我用斜体字“代替”强调,在本例中,替换普通类选择的功能目的。@Kudla69我的答案仍然有效,无论“替换”周围是否有斜体,这不会改变问题的含义。如果我问“你为什么用勺子代替刀子”,答案“因为它们是不同的东西,用途不同”仍然有效。@meager你会用勺子代替刀子来喝汤。然而,如果某些情况使勺子成为更好甚至必要的选择,你会用勺子代替刀子来切割东西。我不是问每个选择器的用途是什么,我认为这是非常清楚的。我想问的是,电子邮件中css的合规性问题是否提供了某种情况,使得按属性选择类比典型的类选择更好。
<div class="foo classname other">
    hello world
</div>