Html 将默认类应用于所有类型的*n*
是否有一种默认情况下将Html 将默认类应用于所有类型的*n*,html,css,Html,Css,是否有一种默认情况下将类应用于元素的方法?例如,我想将类foo应用于所有input元素: .foo { ... } 我有限的知识让我相信,我每次都需要提高分数: <input type='text' class='foo' /> <input type='password' class='foo' /> ... ... 但是,很明显,我希望我可以在默认情况下以某种方式将该类应用于CSS中的所有input元素。我期待你的回答 更新 为了澄清我自己,我不想复制已经存在
类应用于元素的方法?例如,我想将类foo
应用于所有input
元素:
.foo { ... }
我有限的知识让我相信,我每次都需要提高分数:
<input type='text' class='foo' />
<input type='password' class='foo' />
...
...
但是,很明显,我希望我可以在默认情况下以某种方式将该类应用于CSS中的所有input
元素。我期待你的回答
更新
为了澄清我自己,我不想复制已经存在于foo
中的CSS,因为如果我需要更改foo
的样式,我不想在多个地方更改CSS。此外,我将把它应用于不仅仅是所有输入元素。您可以使用jQuery这样的框架轻松地向元素添加类:
$(document).ready(function() {
$('input').addClass('foo');
});
编辑:要解决您的最新更新
如果您只想在某些条件下“扩展”一个类,您可以为该情况添加第二个类。。。e、 g:
<input class="foo bar" />
<style type="text/css">
.foo.bar {
color: #123;
}
</style>
.foo.bar{
颜色:#123;
}
这将只应用同时是.foo
和.bar
的元素,并且不会影响全局.foo
样式,这些样式仍将应用于所有.foo
元素(包括这些)您可以使用类似jQuery的框架轻松地向元素添加类:
$(document).ready(function() {
$('input').addClass('foo');
});
编辑:要解决您的最新更新
如果您只想在某些条件下“扩展”一个类,您可以为该情况添加第二个类。。。e、 g:
<input class="foo bar" />
<style type="text/css">
.foo.bar {
color: #123;
}
</style>
.foo.bar{
颜色:#123;
}
这将只应用同时是.foo
和.bar
的元素,并且不会影响全局.foo
样式,全局.foo
样式仍将应用于所有.foo
元素(包括这些)
这是应用css的代码
这是应用css的代码您可以使用javascript的文档.getElementsByTagName(标记)代码>函数
例如:
var tags = document.getElementsByTagName("input");
for(i = 0;i<tags.length;i++){
tags[i].className = "foo";
}
var tags=document.getElementsByTagName(“输入”);
对于(i=0;i您可以使用javascript的document.getElementsByTagName(标记);
函数
例如:
var tags = document.getElementsByTagName("input");
for(i = 0;i<tags.length;i++){
tags[i].className = "foo";
}
var tags=document.getElementsByTagName(“输入”);
对于(i=0;i如果您的意思是希望采用.foo
规则中的所有样式,并将其应用于输入
s,则只需选择这两种样式:
.foo, input { ... }
如果您的意思是希望将.foo
规则中的所有样式也应用于输入
s,只需选择这两种样式:
.foo, input { ... }
您可以尝试使用或之类的样式表预处理器。这将允许您在此处或此处使用变量和其他技巧,以帮助您避免重复CSS。如果您想在将CSS提供给用户之前对其进行处理,可以使用这些和服务器端的Javascript实现
当然,CSS最终还是会产生重复的代码,但是您不必自己编写两次相同的代码
例如,在以下情况下:
.foo {
color: #222222;
padding: 10px;
}
input {
.foo;
}
您可以尝试使用或之类的样式表预处理器。这将允许您在此处或此处使用变量和其他技巧,以帮助您避免重复CSS。如果您想在将CSS提供给用户之前对其进行处理,可以使用这些和服务器端的Javascript实现
当然,CSS最终还是会产生重复的代码,但是您不必自己编写两次相同的代码
例如,在以下情况下:
.foo {
color: #222222;
padding: 10px;
}
input {
.foo;
}
在本例中,它不会影响OP也需要的密码字段。您可以将其用于paassword Too。在本例中,它不会影响OP也需要的密码字段。您可以将其用于paassword Too。好的,这很有意义,谢谢。尽管有个问题,我本应该更清楚,但我想要的样式是applied存在于一个jQuery UI自定义样式表中,我试图避免修改该样式表。有什么方法可以在我的样式表中构建扩展样式来完成同样的事情吗?@BigM:恐怕标准CSS不可能,只有一个预处理器(见beanland的回答)。即使这样,我也不确定是否可以从其他样式表中获取规则并将其放入Sass/LESS样式表中。因此,由于我可能不会再次下载该自定义样式表,因此这确实是最好的方法,我应该修改该样式表并在将来进行更新(如果存在的话)手工?@BigM:我建议改为在脚本中进行。(我最初对另一个答案发表了评论,说使用脚本太过分了,但由于您刚刚提到您使用的是jQuery UI,也许这还是值得考虑的。您可能还想重新标记您的问题。)我也曾考虑过使用jQuery,但在听了你的回答后,我不禁要问,我从jQuery UI获取此样式表的某种更新的可能性有多大?想法?因为它让我从不同的角度看到了它,我认为简单地添加这些元素是一种非常好的方法。好的,那么这就是这很有道理,谢谢。不过问题是,我本应该澄清得更好,但我想要应用的样式存在于jQuery UI自定义样式表中,我试图避免修改该样式表。有没有办法在我的样式表中构建扩展样式来完成同样的任务?@BigM:恐怕标准CSS不可能做到这一点,只有w使用预处理器(参见beanland的回答)。即使如此,我也不确定是否可以从其他样式表中获取规则并将其放入Sass/LESS样式表中。因此,由于我可能不会再次下载该自定义样式表,这确实是最好的方法,我应该修改该样式表并在将来进行更新(如果存在的话)手工?@BigM:我建议用脚本来代替