如何将链接内的文本与下角对齐

  • 本文关键字:对齐 文本 链接 html css
  • 更新时间 :
  • 英文 :


我有一张卡片,需要用链接覆盖,并且在底部角落有文本。当前文本位于顶部,如何在保留链接覆盖卡的同时将其移动到底部?

.card{
background-color: #fff;
border-radius: 4px;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
width: 200px;
height: 250px;
padding: 10px;
position: relative;
}
.card a {
color: red;
text-decoration: none;
padding: 10px;
position: absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
}
.card a:hover {
cursor: pointer;
text-decoration: underline;
}
<div class='card'>
<p>Some description goes here</p>
<a href='#'>Read more</a>
</div>

它通常被称为拉伸链接(例如在Bootstrap中(,它使用伪(before/after(元素,这些元素是absolute,而原始元素可以在其他地方。

为了将链接放置在卡的底部(不使用absolute位置(,我将flex设置为.card,将margin-top: auto设置为a

类似这样的东西:

.card {
display: flex;
flex-flow: column;
background-color: #fff;
border-radius: 4px;
box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
width: 200px;
height: 250px;
padding: 10px;
position: relative;
}
.card a {
color: red;
text-decoration: none;
margin-top: auto;
}
/* ↓↓ this is it ↓↓ */
.card a:after {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1;
content: "";
}
.card a:hover {
cursor: pointer;
text-decoration: underline;
}
<div class='card'>
<p>Some description goes here</p>
<a href='#'>Read more</a>
</div>

最新更新