我正在设计一个博客。它有一篇扩展到全屏的精选文章,下面显示了其他文章的缩略图。单击其中一个缩略图时,它必须展开,而特色文章将缩小为缩略图。我遇到的棘手部分是在 click
时让文章显示在其他同级文章之上。我唯一能想到的就是为所有当前未显示的缩略图添加一个名为 .thumb
的类。 .thumb
包含样式 align-items: baseline
但这似乎也不起作用。通过查看示例更容易理解该问题。单击任何缩略图,您会立即看到问题。 “文章 1”始终显示在特色文章上方。我知道这更像是一个 CSS 问题而不是 jQuery 但我想不出一个好的标题抱歉。感谢您查看此内容,这是我的代码:
$( "div[id^='block-']" ).click(function() {
$( "div[id^='block-']" ).addClass( "thumb" );
$( "div[id^='block-']" ).removeClass( "featured" );
$( this ).removeClass( "thumb" );
$( this ).addClass( "featured" );
});
* {
margin: 0;
padding: 0;
}
.container {
width: 75vw;
margin: 24px auto;
border: 1px solid black;
}
.block {
width: 120px;
height: 120px;
margin: 16px;
display: inline-block;
border: 1px solid black;
-webkit-transition: all .5s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
transition: all 1s ease;
}
.image {
height: 50%;
background: skyblue;
display: block;
width: 100%;
}
.content {
font-size: 8px;
font-family: Arial;
display: block;
width: 100%;
box-sizing: border-box;
padding: 8px;
}
.featured {
width: calc(100% - 32px);
margin: 16px 16px 0;
}
.thumb {
align-items: baseline;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
<div id="block-1" class="block featured">
<div class="image"></div>
<div class="content">
ARTICLE 1<br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
</div>
</div>
<div id="block-2" class="block thumb">
<div class="image"></div>
<div class="content">
ARTICLE 2<br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
</div>
</div>
<div id="block-3" class="block thumb">
<div class="image"></div>
<div class="content">
ARTICLE 3<br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
</div>
</div>
<div id="block-4" class="block thumb">
<div class="image"></div>
<div class="content">
ARTICLE 4<br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
</div>
</div>
<div id="block-5" class="block thumb">
<div class="image"></div>
<div class="content">
ARTICLE 5<br>
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
</div>
</div>
</div>
最佳答案
好吧,它不会对您的动画有任何好处,但您可以将特色动画绝对定位在父级中。
.container {
position: relative;
padding-top: 140px;
}
.featured {
position: absolute;
top: 0;
left: 0;
}
但是您必须处理看起来比现有效果更好的过渡。
关于jquery - 调整大小时,文章不会停留在其他 sibling 之上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48134339/