将图像放置在锚点标记内时调整大小的原因是,您已将图像大小声明为百分比,即父元素大小的百分比。
.photos img {
width: calc(100%/3);
height: calc(100%/3);
}
若要解决此问题,请声明
width: 100%
当图像在锚内(选择器具有更高的特异性)并且在用于计算图像宽度的选择器中包括锚时。
.photos a img {
width: 100%;
}
@media screen and (min-width: 1024px) {
.photos a,
.photos img {
width: calc(100%/3);
height: calc(100%/3);
}
}
* {
box-sizing: border-box;
}
#imageTextGrid {
width: 100vw;
margin: 0;
margin-right: 0;
/* display: flex; */
}
.photos {
display: flex;
/* background-color: #000; */
flex-direction: row;
flex-wrap: wrap;
justify-content: flex-start;
align-content: stretch;
padding: 0;
max-width: 100vw;
}
.photos img {
display: block;
float: left;
flex: 0 0 auto;
padding: .35vw;
background-color: #fff;
}
.photos a img {
width: 100%;
}
@media screen and (min-width: 1024px) {
.photos a,
.photos img {
width: calc(100%/3);
height: calc(100%/3);
}
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
.photos a,
.photos img {
width: calc(100%/2);
height: calc(100%/2);
}
}
@media screen and (min-width: 50px) and (max-width: 768px) {
.photos a,
.photos img {
width: calc(100%/1);
height: calc(100%/1);
}
}
<div id="imageTextGrid">
<div class="photos">
<!-- <img class="thumbnailImg" src="img/about page 1/proj_thumnails/1_apeldoorn.PNG" /> -->
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" />
<a><img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" /></a>
<a><img class="thumbnailImg" src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg" /></a>
</div>
</div>
此外,大多数CSS声明都是不必要的,包括
height
和
calc()
* {
box-sizing: border-box;
}
.photos {
display: flex;
flex-wrap: wrap;
}
.photos img {
padding: .35vw;
}
.photos a img {
width: 100%;
}
@media (min-width: 1024px) {
.photos a,
.photos img {
width: calc(100%/3);
}
}
@media (min-width: 769px) and (max-width: 1024px) {
.photos a,
.photos img {
width: 50%;
}
}
@media (min-width: 50px) and (max-width: 768px) {
.photos a,
.photos img {
width: 100%;
}
}
<div id="imageTextGrid">
<div class="photos">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg">
<a><img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg"></a>
<a><img src="https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg"></a>
</div>
</div>
此外,使用CSS网格代替Flexbox可以大大简化CSS
* {
box-sizing: border-box;
}
.photos {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
gap: .35vw;
}
.photos img {
width: 100%;
}
<div id=“imageTextGrid”>
<div class=“照片”>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“>
<a><img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“></a>
<a><img src=“https://img.freepik.com/free-photo/puppy-that-is-walking-snow_1340-37228.jpg“></a>
</div>
</div>