我正在創建一個有3行的圖片庫,每一行包含3個使用引導網格系統的圖片。所有的圖像都有不同的大小。我想做的是讓所有的圖像大小相同。 我試圖在我的CSS中使用最大高度或最大寬度,但是這無助于使所有的圖像(縮略圖)大小相似。 我應該去掉thumbnail類還是有其他的解決方法?
body {
padding-top: 70px;}
.row .flex {
display: inline-flex;
width: 100%;}
img {
width:100%;
min-height:100px;}
<link rel="stylesheet"/>
<div class="row match-to-row">
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/eKTUtA74uN0" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/x-tbVqkfQCU" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/cjpGSEkXfwM" alt="">
</div>
</div>
<div class="row match-to-row">
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/63JKK67yGUE" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/YP6lDrlxWYQ" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/NqE8Ral8eCE" alt="">
</div>
</div>
<div class="row flex match-to-row">
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/6oUsyeYXgTg" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/WF2lvywxdMM" alt="">
</div>
</div>
<div class="col-lg-4 col-sm-6">
<div class="thumbnail">
<img src="https://source.unsplash.com/2FdIvx7sy3U" alt="">
</div>
</div>
</div>
</div>
# # #我認為你正在尋找的物業是適合對象的
img {
width: 200px; /* You can set the dimensions to whatever you want */
height: 200px;
object-fit: cover;
}
object-fit屬性的工作方式類似于使用background-size: cover在背景圖像上填充頁面而不拉伸。這樣,您可以在一個規則中定義一個寬度,所有圖像都將遵循該規則,以確保它們具有相同的大小,而不會扭曲您的圖片。
可以與該屬性一起使用的其他值包括:
填充-拉伸圖像。 包含-保留圖像的縱橫比。 覆蓋-填充盒子的高度和寬度。 無-保持原始大小。 縮小-比較“無”和“包含”之間的差異,找出最小的對象大小。 對象適合| CSS-技巧
# # #添加css類img-響應每個圖像。
# # #修改一下:
img {
width: 100px; // how much you want
min-height: 100px;
float: left;
margin: 10px;
}
# # #轉到瀏覽器中的“檢查元素”,查找如下內容:
.thumbnail a>img, .thumbnail>img {
display: block;
width: 100%;
height: auto; }
將其更改為:
.thumbnail a>img, .thumbnail>img {
display: block;
width: 100%;
height: 300px; //change as per your requirement }
###Bootstrap的網格系統使用一系列容器、行和列來布局和對齊內容。頂層是容器,行和列顯示在它下面。 在引導程序中,有4個類 xs(適用于屏幕寬度小于768像素的手機) sm(適用于平板電腦-屏幕寬度等于或大于768像素) md(適用于小型筆記本電腦-屏幕寬度等于或大于992像素) lg(適用于筆記本電腦和臺式機-屏幕寬度等于或大于1200像素)
如何決定列顯示: 一頁被分成12列網格,寬度計算如下 寬度:百分比((@ columns/@ grid-columns)); 1列/ 12個網格列= 8.33% * 1170像素= 97.5像素 沒有部分像素,因此瀏覽器會對數字進行舍入。 col-md-2將連續顯示6幅圖像。2表示顯示圖像的兩列
在小型設備上打開時,col-sm-12 - Class將有助于堆疊圖像
。是為圖像框定義附加屬性的自定義類 希望這有所幫助。
.img-center {
text-align: center;
border-radius: 8px;
width: 100px;
background-color: white;
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15), 0 2px 3px 0 rgba(0, 0, 0, 0.1);
}
.row {
display: flex;
margin: auto;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="EightImages.css" />
<link rel="images" href="images" />
<link rel="stylesheet" href="css/bootstrap-grid.min.css" />
<link rel="stylesheet" href="css/bootstrap.min.css" />
<title>Document</title>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
<div class="col-sm-12 col-md-2">
<img
class="img-fluid img-center"
src="https://cdn.pixabay.com/photo/2016/09/07/11/37/tropical-1651426__340.jpg"
/>
<p>
Test
</p>
</div>
</div>
</div>
<script src="js/bootstrap.min.js"></script>
<script
src="https://code.jquery.com/jquery-3.2.1.slim.min.js"
integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
crossorigin="anonymous"
></script>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
crossorigin="anonymous"
></script>
</body>
</html>
# # #正如Dushyant Surya所評論的,試試這個:
我添加了2條額外的規則來使img更漂亮。我不能評論,因為我還沒有聲譽點。但是這個對我來說很好!
.thumbnail a>img, .thumbnail>img {
display: block;
width: 100%;
height: 250px;
// but add these to make your images prettier and keep the quality.
object-fit: cover;
image-resolution: from-image;
}