我试图将一个由锚标签包裹的图像居中在div中。我试图使用显示器flexbox和justify-content:center
图像在一定程度上工作,但图像的高度保持不变,而宽度相应地改变,因此当我从桌面缩小到移动时,压缩图像。 ..因此失去了它的质量。
如何将此图像居中。
注意:我正在使用波旁威士忌
这就是我所拥有的
HTML
<div class="project">
<a class="project__thumb" href="{{ project.url }}" target="_blank">
<img src="{{ site.baseurl }}img/{{ project.thumbnail }}">
</a>
</div>
SCSS
.project{
width: 80%;
margin: 0 auto; /*center whole block for mobile*/
height: auto;
margin-bottom: 60px;
border-radius: 2px;
position: relative;
a{
display: flex;
justify-content: center;
}
img{
max-width: 100%; /*make image responsive*/
height: auto; /*make image responsive*/
border-radius: 2px;
transition: opacity 0.25s ease-in-out;
}
}
@include media ($tablet){
.main__projects{
@include span-columns(12);
}
.project{
@include span-columns(6 of 12);
@include omega(2n);
margin-bottom: 50px;
}
}
@include media ($desktop){
.main__projects{
@include span-columns(12);
}
.project{
@include span-columns(4 of 12);
@include omega(3n);
margin-bottom: 100px;
}
}
答案 0 :(得分:1)
这里有几个问题。第一个问题是您使用了错误的CSS注释。对于CSS,您需要使用/* */
包装注释。 //
用于评论JavaScript。由于您使用的是Javascript评论,因此height
的{{1}}和border-radius
属性将被忽略。
另一个问题是在锚标记上使用img
,这将阻止响应式图像大小调整的发生。这应该让你开始:
display:flex;
.project{
width: 80%;
margin: 0 auto; /* center whole block for mobile */
height: auto;
margin-bottom: 60px;
border-radius: 2px;
position: relative;
text-align:center;
}
.project a {
display:inline-block;
}
.project img{
max-width: 100%; /* make image responsive */
height: auto; /* make image responsive - THIS IS NOT NECESSARY */
border-radius: 2px;
transition: opacity 0.25s ease-in-out;
}