我正在處理自定義collapser,但我不知道如何在隱藏時進行轉換。
在線搜索我發現「display:none;」,但它不支持轉換。
我試過做高度:auto;然後height:0px;但它也不支持轉換。
轉換爲摺疊
下面的代碼:
HTML
<a class="clp" href="#clp-1"><div>Button</div></a>
<div class="clp-body clp-show" id="clp-1">Lorem ipsum</div>
CSS
.clp > div {
border: 1px solid black;
border-radius: 3px;
width: 150px;
padding: 5px;
}
.clp {
text-decoration: none;
font-family: Verdana;
color: black;
}
.clp-body {
border: 1px solid black;
border-radius: 3px;
width: 150px;
padding: 5px;
margin-top: 5px;
transition: all 0.5s ease;
}
.clp-show {
opacity: 1;
}
.clp-show {
opacity: 0;
display: none; /* Only for the example */
}
JS(jQuery的)
$('a.clp').click(function(){
var value = $(this).attr("href");
if ($('div'+(value)).hasClass('clp-show')) {
$('div'+(value)).addClass('clp-hide');
$('div'+(value)).removeClass('clp-show');
}
else {
$('div'+(value)).removeClass('clp-hide');
$('div'+(value)).addClass('clp-show');
};
});
這裏是一個鏈接:https://codepen.io/Keyon/pen/937706ce73bc3f68cbeff6dd6faf6c87
你想要什麼類型的轉變?您可能正在尋找jQuery的slideUp()和slideDown()函數。文檔[這裏](http://api.jquery.com/slideup/)。 –
@JosephBeard我也已經嘗試過了,但它有一個奇怪的行爲[Codepen](https://codepen.io/Keyon/pen/14b311941ee4b2e3973bcc6acd5949ee) – Keyon
看起來奇怪的行爲是由一起使用CSS轉換引起的與slideUp或slideDown。如果您從CSS中移除了「transition:all 0.5s ease;',則滑動正常工作。 –