具有图标适应性的HTML内联列表(Bootstrap4)

时间:2019-12-17 20:46:10

标签: html css bootstrap-4

在我的列表中,有些单词有两行,但是第二行跳到了图标底部,我该如何保持在图标两行旁边?我正在使用bootstrap进行此操作,并选择使用list-inline类,也许足以处理此列表的列,或者什么是处理或修复此列表的最佳方法?

这就是我需要的方式:

enter image description here

JSFIDDLE

.container {
  padding: 15px 40px;
  border-radius: 6px;
  border: solid 1px #e5e5e5;
  background-color: #ffffff;
  font-size: 16px;
  line-height: normal;
  color: #333333;
}

.list-inline {
  margin: 0;
}

.icon-europe {
  width: 24px;
  height: 24px;
  background-image: url("https://i.ibb.co/xhRsmPz/europe.png");
  background-repeat: no-repeat;
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
}

.icon-warranty {
  width: 24px;
  height: 24px;
  background-image: url("https://i.ibb.co/VLy7ssd/warranty.png");
  background-repeat: no-repeat;
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
}
<!doctype html>
<html lang="en">

<head>
  <!-- Required meta tags -->
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

  <!-- Bootstrap CSS -->
  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">

  <title>Inline list</title>
</head>

<body>
  <div class="container">
    <div class="row">
      <div class="col-lg-12">
        <ul class="list-inline">
          <li class="list-inline-item"><span class="icon-europe"></span> Dirbame visoje<br> Europoje
          </li>
          <li class="list-inline-item"><span class="icon-warranty"></span> 2 metų garantija
          </li>
        </ul>
      </div>
    </div>
  </div>

  <!-- Optional JavaScript -->
  <!-- jQuery first, then Popper.js, then Bootstrap JS -->
  <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
  <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>
</body>

</html>

3 个答案:

答案 0 :(得分:0)

您可以将列表代码更改为

 <li class="list-inline-item"><span class="icon-europe" style="float:left"></span> Dirbame visoje<br> Europoje
 </li>

答案 1 :(得分:0)

您可以像这样在html中添加图像:

HTML:

  <div class="container">
    <div class="row">
      <div class="col-lg-12">
        <ul class="d-flex">

          <li class="d-flex pr-4 align-items-center">
            <img class="icon" src="https://i.ibb.co/xhRsmPz/europe.png" alt="">
            <div>Dirbame visoje</br>Europoje</div>
          </li>

          <li class="d-flex pr-4 align-items-center">
            <img class="icon" src="https://i.ibb.co/VLy7ssd/warranty.png" alt="">
            <div>2 metų garantija</div>            
          </li>

        </ul>
      </div>
    </div>

CSS:

.container {
  padding: 15px 40px;
  border-radius: 6px;
  border: solid 1px #e5e5e5;
  background-color: #ffffff;
  font-size: 16px;
  line-height: normal;
  color: #333333;
}

.icon{
  width: 24px;
  height: 24px;
  margin-right: 10px;
}

答案 2 :(得分:0)

最简单的方法是使用flexbox和align-items:

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
li {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  font-family: arial;
}
.icon {
  width: 24px;
  height: 24px;
  margin-right: 8px;
}
.icon-europe {
  background: url("https://i.ibb.co/xhRsmPz/europe.png") no-repeat;
}
.icon-warranty {
  background: url("https://i.ibb.co/VLy7ssd/warranty.png") no-repeat;
}
<ul>
  <li><span class="icon icon-europe"></span>Dirbame visoje<br />Europoje</li>
  <li><span class="icon icon-warranty"></span>2 metų garantija</li>
</ul>