Javascript 如何向现有css类添加元素
如何将css元素添加到我现有的css类中 CSS: 有没有办法将属性添加到Javascript 如何向现有css类添加元素,javascript,jquery,css,Javascript,Jquery,Css,如何将css元素添加到我现有的css类中 CSS: 有没有办法将属性添加到.usergrid 我试过像$(.usergrid.css(“显示”、“块”)但它不工作 谢谢 $(“.usergrid.k-button”).css({“display”:“block”}) .usergrid.k按钮{ 颜色:黑色; 背景色:白色; } JS-Bin 试试这段代码 $('.usergrid').css("display","block"); 试试这个代码 $('.usergrid').c
.usergrid
我试过像$(.usergrid.css(“显示”、“块”)代码>但它不工作
谢谢
$(“.usergrid.k-button”).css({“display”:“block”})代码>
.usergrid.k按钮{
颜色:黑色;
背景色:白色;
}
JS-Bin
试试这段代码
$('.usergrid').css("display","block");
试试这个代码
$('.usergrid').css("display","block");
您还可以使用以下语法设置多个css属性:
$('.usergrid').css({"display": "block", "background-color": "white"});
您还可以使用以下语法设置多个css属性:
$('.usergrid').css({"display": "block", "background-color": "white"});
jQuery(文档).ready(函数(){
jQuery('.usergrid').css(“显示”、“块”);
});
jQuery(文档).ready(函数(){
jQuery('.usergrid').css(“显示”、“块”);
});
这里的问题是,您无法向已解析的CSS添加内容。只能将内联样式添加到特定元素。比如说,你有一个
。您所做的唯一修改是:
。这里使用.css
给出的示例正是这样做的
其他选择包括:
动态添加CSS代码
动态链接CSS文件
更新
所以,我现在意识到问题出在哪里。如果您有一个元素,您希望以某种方式修改它。例如,它是不可见的,然后变为可见的,或者它有白色背景,然后变为黄色,等等。这里的关键是你有你的初始状态和它的“修饰符”。如果你把修改器拿走,你会回到事情开始的地方。从CSS的角度来看,它意味着:
.my-elem {}
.my-elem--big {}
.my-elem--yellow {}
.my-elem--visible {}
现在,在JS中,您只需要向元素添加一组适当的修饰符(类)
<div class="my-elem"></div>
<div class="my-elem my-elem--visible"></div>
CSS有一个命名约定,称为BEM。它正好解决了这个问题。简而言之,您将UI拆分为块、元素和修改器
通过采用这种方法,您可以分离关注点(元素何时可见的逻辑,JS,以及它可见的含义,CSS),并使您的代码更易于使用(普遍存在的结构和可预测性)
就我个人而言,我总是尽量避免在我的JS中使用CSS。即使它只是显示:block
。因为这两个函数用于不同的对象。这里的问题是,您无法向已解析的CSS中添加内容。只能将内联样式添加到特定元素。比如说,你有一个
。您所做的唯一修改是:
。这里使用.css
给出的示例正是这样做的
其他选择包括:
动态添加CSS代码
动态链接CSS文件
更新
所以,我现在意识到问题出在哪里。如果您有一个元素,您希望以某种方式修改它。例如,它是不可见的,然后变为可见的,或者它有白色背景,然后变为黄色,等等。这里的关键是你有你的初始状态和它的“修饰符”。如果你把修改器拿走,你会回到事情开始的地方。从CSS的角度来看,它意味着:
.my-elem {}
.my-elem--big {}
.my-elem--yellow {}
.my-elem--visible {}
现在,在JS中,您只需要向元素添加一组适当的修饰符(类)
<div class="my-elem"></div>
<div class="my-elem my-elem--visible"></div>
CSS有一个命名约定,称为BEM。它正好解决了这个问题。简而言之,您将UI拆分为块、元素和修改器
通过采用这种方法,您可以分离关注点(元素何时可见的逻辑,JS,以及它可见的含义,CSS),并使您的代码更易于使用(普遍存在的结构和可预测性)
就我个人而言,我总是尽量避免在我的JS中使用CSS。即使它只是显示:block
。因为这两者的含义不同。应该用引号括起来,比如$('.usrgrid').css(“display”,“block”)代码>听起来像是为类设置显示块。使用jquery的usergrid请确保首先包含jquery库,然后只有代码可以使用$('.usergrid').css({“display”:“block”});它是css元素
还是css属性
它应该在$('.usrgrid').css(“显示”、“块”)之类的引号中代码>听起来像是为类设置显示块。使用jquery的usergrid请确保首先包含jquery库,然后只有代码可以使用$('.usergrid').css({“display”:“block”});它是css元素
还是css属性
,但是如果在任何html元素中都没有使用usrgrid类,但我想为其添加新属性,该怎么办?您必须使用ID,类名称或元素名称,而不是退出类。但是,如果usrgrid类未在任何html元素中使用,但我希望向其添加新属性,该怎么办?您必须使用ID、类名或元素名称,而不是退出类谢谢@Ourobrus!我的孩子跑来跑去,只能给出粗略的回答,也就是说,如果不使用这个类,我就不能将css属性添加到这个类中?@Ivanok。类来自CSS并应用于DOM元素。直觉是您对DOM元素进行分类。类似“绿色链接”、“大标题”,甚至两者都有,等等。因此,如果您想在DOM元素中添加额外的内容(从样式的角度来看),可以将内联CSS或其他类添加到类列表中。@Austinoh可以通过Javascript直接修改CSS类。尽管这样做涉及到从常规样式表创建的样式表对象。一个小小的修正:通过这样做,您可以扩展/覆盖原始CSS类。但是,“原始”CSS代码保持不变。正如我前面提到的,动态添加CSS到页面就是这样。感谢@Ouroburus的编辑!我的孩子跑来跑去,只能给出粗略的回答,也就是说,如果不使用这个类,我就不能将css属性添加到这个类中?@Ivanok。类来自CSS并应用于DOM元素。直觉是你