新手jquery:如果属性包含在HTML中,或者它是否定位并随后从外部样式表(如果有的话)中更改元素,.css()
函数是否会改变元素的css属性?
e.g。
$('#main').css('background-color', '#eee');
由于我的HTML中没有内联<style>
标记,该函数是否会在链接的外部样式表中查找#main
类?
答案 0 :(得分:1)
该代码修改元素的内联样式属性。它没有触及你的所有css文件。
您的选择器会查找id = main
的元素并设置style.backgroundColor = '#eee'
。
答案 1 :(得分:1)
JavaScript正在对计算出的DOM元素进行操作,而不是以任何方式修改样式表本身。据我所知,jQuery函数将CSS置于与元素本身相同的水平,即:
<div id="main" style="background-color: #eee;"></div>
这是CSS中最高级别的目标。将覆盖任何其他目标元素(例如外部样式表)。
答案 2 :(得分:0)
当使用.css()作为setter时,jQuery会修改元素的样式 属性。例如,$('#mydiv')。css('color','green')是等价的 to document.getElementById('mydiv')。style.color ='green'。
它设置元素的style属性,不触及外部样式表。
答案 3 :(得分:0)
jQuery在客户端工作,因此它不能改变或更改服务器端的外部链接样式表。首先,它将根据您的选择器选择元素,然后将css样式内联。您可以在Firefox中使用Firebug来检查这些内联样式。我们通常使用.css()
来改变css样式的运行时间。如果要在运行时应用链接的css样式表中的样式,可以创建一个类并使用addClass().