我在尝试创建网格菜单时遇到了问题,但我想添加图片图标而不是网格方格中的文字。
以下是我使用的html和CSS:
.wrapper {
display: grid;
grid-template-columns: 150px 150px 150px;
grid-template-rows: 150px 150px 150px;
grid-gap: 50px;
color: #444;
}
img {
float: inherit;
padding: 10px;
height: inherit;
width: inherit;
}
.box {
background-color: #444;
color: #fff;
border-radius: 10px;
padding: 20px;
font-size: 150%;
}

<div class="wrapper">
<div class="box a"><img src="https://lorempixel.com/400/400" /></div>
<div class="box b">B</div>
<div class="box c">C</div>
<div class="box d">D</div>
<div class="box e">E</div>
<div class="box f">F</div>
</div>
&#13;
如上图所示,添加带图片的图像不会让图标位于网格框中。
我不太了解CSS。请协助。
答案 0 :(得分:2)
您需要在CSS中执行此操作...
.box img {
max-width: 100%;
width: auto;
height: auto;
/* @VxP stated this: */
display: block;
}
...对于这个HTML:
<div class="box">
<img src="" alt="">
</div>
我创造了一个小提琴来证明这一点:
.wrapper {
display: grid;
grid-template-columns: 150px 150px 150px;
grid-template-rows: 150px 150px 150px;
grid-gap: 50px;
color: #444;
}
img {
float:inherit;
padding:10px;
height: inherit;
width: inherit;
}
.box {
background-color: #444;
color: #fff;
border-radius: 10px;
padding: 20px;
font-size: 150%;
}
/* My code */
.box img {
max-width: 100%;
width: auto;
height: auto;
/* @VxP stated this: */
display: block;
}
* {
box-sizing: border-box;
}
<div class="wrapper">
<div class="box a"><img src="http://lorempixel.com/400/400/" /></div>
<div class="box b">B</div>
<div class="box c">C</div>
<div class="box d">D</div>
<div class="box e">E</div>
<div class="box f">F</div>
</div>
PS:也许您需要box-sizing: border-box
才能使此工作100%正确。我将其添加到上面的代码段中。
答案 1 :(得分:1)
图片的以下css代码就足够了。
img {
width: 100%;
height: 100%;
}