2016-08-21 60 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>