2016-08-21 26 views
-1

在Javascript中,我可以制作一个div(具有实心边框的矩形),将其显示设置为none,然后将其显示设置改回为使用{ '显示': ''}等价于样式表中的{'display':''}

例:

var overlay = $('<div class="area"></div>') 
    .css({position: 'absolute', left: l + 'px', 
    top: t + 'px', border: 'solid', borderColor: 'red', display: 'none' }). 

overlay.css({'display': ''}); 
}); 

我想打一个CSS类,设置它的元素显示的回缺省值:

<style id="default">.default { display: '';}</style> 
<div class="default"></div> 

这是行不通的。任何人都可以告诉我这个正确的语法吗?

+2

我假定你的意思'显示:block',但目前还不清楚。 div的默认显示值是“block”,但你可能已经改变了它。另外,你似乎混合了ID和课程......所以这可能是另一回事。 –

+0

如果你通过javascript设置样式,那么它是inline属性,你只能使用display:block!important;重写它。但我不能推荐它使用。迟早,你会讨厌!重要的:) 我可以推荐你通过JavaScript和CSS样式分开更改类。 – Maju

回答

0

$('a.show').click(function() { 
 
    $('.area').addClass('show'); 
 
}); 
 
$('a.hide').click(function() { 
 
    $('.area').removeClass('show'); 
 
});
.area { 
 
    position: absolute; 
 
    left: lpx; 
 
    top: 30px; 
 
    display: none; 
 
    width: 50px; 
 
    height: 50px; 
 
    border: 5px solid red; 
 
} 
 
.area.show { 
 
    display: block; 
 
} 
 
a { 
 
    display: inline-block; 
 
    margin: 0; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="area"></div> 
 
<a class="show">SHOW</a> 
 
<a class="hide">HIDE</a>