简体   繁体   English

水平 ul 列表中的神秘左侧填充

[英]Mystery left padding from a horizontal ul list

I have made a horizontal unordered list that works great except for the fact that there is some left padding.我制作了一个水平无序列表,效果很好,除了有一些左边的填充。 I'd like the UL to be flush against its' container and not have any padding.我希望 UL 与它的容器齐平并且没有任何填充物。

I've tried margin-left: 0 but no joy.我试过 margin-left: 0 但没有快乐。

Can anyone see or think of a way to get my markup to be flush left?任何人都可以看到或想到一种方法来让我的标记向左对齐吗?

Here's the CSS这是 CSS

ul.speakerclass > li {
    display: inline-block;
    /* You can also add some margins here to make it look prettier */
    width:180px;
    zoom:1;
    *display:inline;
    /* this fix is needed for IE7- */
}

.speakercard {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  max-width: 180px;
  margin: auto;
  text-align: center;
  padding-top: 14px;
}

button.speakerclass {
  border: none;
  outline: 0;
  display: inline-block;
  padding: 10px;
  color: white;
  background-color: #393939;
  text-align: center;
  cursor: pointer;
  width: 100%;
}

a.speakerclass {
  text-decoration: none;
  color: black;
}

button.speakerclass:hover, a:hover {
  opacity: 0.7;
}

.speaker-box {
  width: 100px;
  height: 100px;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  border:1px solid #ccc;
  margin-left: auto;
  margin-right: auto;
}

.speaker-pic {
  display: inline;
  margin: 0 auto;
  height: 100%;
  width: auto;
}

And the HTML和 HTML

  <ul class="speakerclass">
      <li>
        <div class="speakercard">
          <div class="speaker-box">
            <img src="./img.jpeg" class="speaker-pic" alt="" style="width:100%">
          </div>
          <p>1 Psoo Doe</p>
          <p><button class="speakerclass">Speaker Profile</button></p>
        </div>
      </li>

      <li>
        <div class="speakercard">
          <div class="speaker-box">
            <img src="./img.jpeg" class="speaker-pic" alt="" style="width:100%">
          </div>
          <p>2 Doe</p>
          <p><button>Speaker Profile</button></p>
        </div>
      </li>

      <li>
        <div class="speakercard">
          <div class="speaker-box">
            <img src="./img.jpeg" class="speaker-pic" alt="" style="width:100%">
          </div>
          <p>3 Doe</p>
          <p><button>Speaker Profile</button></p>
        </div>
      </li>
  </ul>

Thanks for all help感谢所有帮助

Add this:添加这个:

ul.speakerclass {
    padding: 0;
}

Setting padding-left: 0 for the ul.speakerclass container removed the space.ul.speakerclass容器设置padding-left: 0删除了空格。

According to W3C Standard , <ul> elements by default have a padding-inline-start: 40px .根据W3C 标准,默认情况下<ul>元素具有padding-inline-start: 40px This accounted for the 40px of left padding.这占了 40px 的左填充。

 ul.speakerclass { padding-left: 0; } ul.speakerclass > li { display: inline-block; /* You can also add some margins here to make it look prettier */ width:180px; zoom:1; *display:inline; /* this fix is needed for IE7- */ }.speakercard { box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2); max-width: 180px; margin: auto; text-align: center; padding-top: 14px; } button.speakerclass { border: none; outline: 0; display: inline-block; padding: 10px; color: white; background-color: #393939; text-align: center; cursor: pointer; width: 100%; } a.speakerclass { text-decoration: none; color: black; } button.speakerclass:hover, a:hover { opacity: 0.7; }.speaker-box { width: 100px; height: 100px; position: relative; overflow: hidden; border-radius: 50%; border:1px solid #ccc; margin-left: auto; margin-right: auto; }.speaker-pic { display: inline; margin: 0 auto; height: 100%; width: auto; }
 <ul class="speakerclass"> <li> <div class="speakercard"> <div class="speaker-box"> <img src="./img.jpeg" class="speaker-pic" alt="" style="width:100%"> </div> <p>1 Psoo Doe</p> <p><button class="speakerclass">Speaker Profile</button></p> </div> </li> <li> <div class="speakercard"> <div class="speaker-box"> <img src="./img.jpeg" class="speaker-pic" alt="" style="width:100%"> </div> <p>2 Doe</p> <p><button>Speaker Profile</button></p> </div> </li> <li> <div class="speakercard"> <div class="speaker-box"> <img src="./img.jpeg" class="speaker-pic" alt="" style="width:100%"> </div> <p>3 Doe</p> <p><button>Speaker Profile</button></p> </div> </li> </ul>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM