图像和多行文本和链接垂直对齐

时间:2016-10-04 21:33:36

标签: html css image hyperlink vertical-alignment

我在p标签中有一个图像和一些文本,并且链接要垂直对齐。当我浮动图像时它很好用。但是当我在p标签和链接中使用填充时,它不能完美地填充填充。


click here to see the image I need look like


here is a fiddle

.wrapper {
  font-family: sans-serif;
  width: 400px;
  margin-top: 30px;
  margin-bottom: 30px;
  clear:both
}

img {
  float: left;
}
p.text {
  padding-left: 30px;
  display: block;
  padding-bottom: 22px;
  color: #222222;
}

a.link {
  text-decoration: none;
  padding-left: 30px;
  text-transform: uppercase;
  line-height: 22px;
  color: #777777;
}

a.date {
  color: #e10622;
  text-decoration: none;
}
<div class="wrapper">
  <img src="https://placehold.it/100x100" alt="">
  <p class="text">Posted By: Simon  | <a href="#" class="date"> 26 July 2016</a></p>
  <a href="#" class="link">Days are all happiness is key
and Free</a>
</div>
<div class="wrapper">
  <img src="https://placehold.it/100x100" alt="">
  <p class="text">Posted By: Simon  | <a href="#" class="date"> 26 July 2016</a></p>
  <a href="#" class="link">Days are all happiness is key
and Free</a>
</div>
<div class="wrapper">
  <img src="https://placehold.it/100x100" alt="">
  <p class="text">Posted By: Simon  | <a href="#" class="date"> 26 July 2016</a></p>
  <a href="#" class="link">Days are all happiness is key
and Free</a>
</div>


<br>
<br>
<br>

<a href="http://prntscr.com/cpusej" style="text-align:center; display: block; padding: 10px; background: #f44; font-size: 18px">Please see here what I need</a>




提前致谢。 :)

2 个答案:

答案 0 :(得分:1)

您需要将display: block;添加到a.link班级样式中。另外,在您的图片上设置margin-right: 30px;,然后从padding-left: 30px;p.text元素中移除a.link个样式。最终的CSS如下:

.wrapper {
    font-family: sans-serif;
    width: 400px;
    margin-top: 30px;
    margin-bottom: 30px;
}

img {
    float: left;
    margin-right: 30px;
}
p.text {
    display: block;
    padding-bottom: 22px;
    color: #222222;
}

a.link {
    text-decoration: none;
    text-transform: uppercase;
    line-height: 22px;
    color: #777777;
    display: block;
}

答案 1 :(得分:0)

我有一个快速的解决方案。看起来你需要在文本周围添加一个容器,然后添加你想要的填充。请参阅下面的快速说明。

将以下内容添加到您的css:

div.textcontainer{
padding-left:130px
}

同样删除padding-left:来自p.text的30px,如下所示:

p.text {
display: block;
padding-bottom: 22px;
color: #222222;
}

最后在文本周围添加一个容器,如下所示:

<div class="textcontainer">
//Insert coding you wish
</div>

这是您的解决方案的快速解决方案。理想情况下,您可能希望使用类似bootstrap或其他一些css框架工作的东西来设计这种流畅性。我希望这适合你。