我正在创建一个简单的CSS网格。第一行是两列,一列是标题,另一列是图像。然后第二行包含跨越两列的所有内容。
我遇到的问题是标题和图像的高度不同(第1行:边框底部不是内联的)。
由于图像的高度设置得很小,我不知道为什么第1行第2列会这么大。任何建议,让它相同的高度行1列1只使用CSS(我有有限的能力来调整html)。
https://jsfiddle.net/05jsnmvz/
片段:
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;900&family=Source+Sans+Pro&display=swap');
:root {
--title: #3c3b3b;
--secondarytext: #5b5b66;
--maintext: #646464;
--cardbg: #fff;
--pagebg: #f4f4f4;
--borders: 1px solid #e6e6e6;
}
*,
::before,
::after {
box-sizing: border-box;
margin: 0;
padding: 0;
scroll-behavior: smooth;
}
html {
font-family: 'Source Sans Pro';
font-size: 12pt;
line-height: 1.5;
background: var(--pagebg);
}
body {
width: 70%;
width: 120ch;
margin: 5% auto;
border: var(--borders);
background: var(--cardbg);
color: var(--maintext);
}
#content {
display: grid;
grid-template-columns: 3fr 1fr;
}
.title {
grid-row: 1;
grid-column: 1;
font-family: 'Raleway';
text-transform: uppercase;
letter-spacing: 0.5rem;
font-size: 150%;
font-weight: bold;
text-align: left;
color: var(--title);
padding: 3rem 3rem;
padding-top: 4rem;
margin-bottom: 3rem;
border-bottom: var(--borders);
}
.title .subtitle {
font-size: 50%;
letter-spacing: 0.2rem;
color: var(--secondarytext);
font-weight: normal;
}
#thumbnail {
grid-row: 1;
grid-column: 2;
border-bottom: var(--borders);
margin: 0;
padding: 0;
display: flex;
align-items: center;
justify-content: center;
}
#thumbnail img {
max-height: 4rem;
max-width: 4rem;
}
.article {
grid-column: 1 / span 2;
padding: 0rem 3rem;
}
p {
margin-bottom: 1.5rem;
}
<div id="content" class="content">
<h1 class="title">My Title
<br>
<span class="subtitle">April 2023</span>
</h1>
<div id="thumbnail">
<img src="https://placekitten.com/g/200/200">
</div>
<div class="article">
<p>
Main content here.
</p>
</div>
</div>
1条答案
按热度按时间bzzcjhmw1#
只需将
margin-bottom: 48px;
添加到#thumbnail
,就像您对.title
所做的那样。请参见下面的片段。