Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法将默认css属性应用于css文件中定义的带有jquery的元素?_Jquery_Html_Css - Fatal编程技术网

有没有办法将默认css属性应用于css文件中定义的带有jquery的元素?

有没有办法将默认css属性应用于css文件中定义的带有jquery的元素?,jquery,html,css,Jquery,Html,Css,我使用jquery根据屏幕分辨率动态放置内容。如果分辨率宽度低于800px,我希望根据需要调整元素,但当窗口宽度调整到800px以上时,我希望外部css文件中已定义的css样式再次应用于元素。我可以手动完成并再次更改所有内容,但这似乎是多余的。我是否可以使用面向对象的css技巧或jquery函数来实现这一点 范例 $(window).resize(function() { if(this.resizeTO) clearTimeout(th

我使用jquery根据屏幕分辨率动态放置内容。如果分辨率宽度低于800px,我希望根据需要调整元素,但当窗口宽度调整到800px以上时,我希望外部css文件中已定义的css样式再次应用于元素。我可以手动完成并再次更改所有内容,但这似乎是多余的。我是否可以使用面向对象的css技巧或jquery函数来实现这一点

范例

    $(window).resize(function()
    {
        if(this.resizeTO) 
            clearTimeout(this.resizeTO);
        this.resizeTO = setTimeout(function() 
        {
            if(window.innerWidth < 800)
            {
                $("#usernameDisplay").css({top: "50px", right:"50%", "margin-right": "-" + $("#usernameDisplay").width()/2 + "px", "padding-top":"0px"});   
                $("#headerBack").css("height", "95px");
                $("#userMenuContainer").css({top: "95px", right:"50%", "margin-right": "-" + $("#userMenuContainer").width()/2 + "px"});
            }
            else
            {
                $("#usernameDisplay").css({top: "0px", right:"0", "margin-right": "0", "padding-top":"10px"});  
                $("#headerBack").css("height", "55px");
                $("#userMenuContainer").css({top: "110px", right:"0", "margin-right": "0"});
            }
        }, 200);
    });
$(窗口)。调整大小(函数()
{
如果(这是resizeTO)
clearTimeout(this.resizeTO);
this.resizeTO=setTimeout(函数()
{
如果(窗内宽度<800)
{
$(“#用户名显示”).css({top:“50px”,right:“50%”,margin right:“-”+$(“#用户名显示”).width()/2+“px”,“padding top:“0px”});
$(“#headerBack”).css(“高度”,“95px”);
$(“#userMenuContainer”).css({top:“95px”,right:“50%”,margin right:“-”+$(“#userMenuContainer”).width()/2+“px”});
}
其他的
{
$(“#用户名显示”).css({top:“0px”,right:“0”,“margin right:“0”,“padding top:“10px”});
$(“#headerBack”).css(“高度”,“55px”);
$(“#userMenuContainer”).css({top:“110px”,right:“0”,“margin right:“0”});
}
}, 200);
});

如果您的CSS规则应用了样式,请说:

.foo {
    left: 20px;
}
您有一个元素适用于:

<div class="foo">...</div>
请注意,它会覆盖它,而不会覆盖它

如果随后从元素本身中删除该样式值:

$(".foo").css("left", "");
…CSS规则再次应用,(在本例中,
left
属性返回到20px

如果要删除应用于元素的所有内联样式,可以通过清除
style
属性:

$("#usernameDisplay").attr("style", "");

因此,请使用
.addClass()
并摆脱
风格
attribute@Mr.Alien:这适用于应用静态或/或值,对于正在动态计算的值(例如,
$(“#usernameDisplay”).width()/2+“px”
)则不太适用。我不认为这是重复的。我要求重新应用以前定义的css。不要替换它。@CraigPatrickLafferty:你问的是如何删除内联样式(这样CSS规则就接管了)。这个问题询问了如何删除内联样式(并且有现成的答案)。还是我们误会了?@T.J.Crowder哦,我明白了,在这里学习蜜蜂:)
$("#usernameDisplay").attr("style", "");