如何删除ul中li的边距?

时间:2014-10-11 11:04:20

标签: html css

我有一堆李的无序列表。但我似乎无法消除李的差距。

这就是我希望它的样子:

enter image description here

这就是现在的样子:

enter image description here

我接下来可以尝试什么?

JSFiddle:

http://jsfiddle.net/narzero/76egxmt9/

HTML:

<body>
  <div class="content_panel active">
    <ul class="unstyled items_board">
      <li class="item_header">First</li>
      <li class="has_details item">one</li>
      <li class="has_details item">two</li>
      <li class="has_details item">three</li>
      <li class="has_details item">four</li>
      <li class="has_details item">five</li>
      <li class="has_details item">six</li>

      <li class="item_header">Second</li>
      <li class="has_details item">one</li>
      <li class="has_details item">two</li>
      <li class="has_details item">three</li>
      <li class="has_details item">four</li>
      <li class="has_details item">five</li>
      <li class="has_details item">six</li>
    </ul>
  </div>  
</body>

CSS:

body {
  background: #fcfcfc;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, sans-serif;
}

.content_panel .active {
  display: inherit;
}

.unstyled {
  margin-left: 0;
  list-style: none;

  /* border:1px solid #e5edec; */
}

ul {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
  -webkit-padding-start: 40px;
  margin: 0 0 10px 25px;
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

li {
  line-height: 20px;
}

ul > .unstyled {
  margin-left: 0;
  list-style: none;
}

.items_board {
  padding: 4px;
  min-height: 500px;
}

.item_header {
  background: transparent;
  width: 100%;
  margin-right: 0;
  padding: 0;
  margin-bottom: 20px;
  margin-top: 42px;
  cursor: auto;
  border: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.item_header:first-child {
  margin-top: 8px;
}

.items_board .item {
  height: 300px;
  margin: 0 -1px -1px 0;
  display: inline-block;
  position: relative;
  vertical-align: top;
  width: 205px;
  background: #fff;
  text-align: left;
  color: #5a5a5a;
  font-weight: 400;
  border: 1px solid #e5edec;
}

.has_details {
  cursor: pointer;
}

2 个答案:

答案 0 :(得分:2)

font-size: 0;添加到.unstyled,然后将font-size(例如16px)添加到li,以删除内联块元素之间的空格,如下所示:

JSFiddle - DEMO

.unstyled {
    font-size: 0;
    margin-left: 0;
    list-style: none;
    /* border:1px solid #e5edec; */
}
li {
    line-height: 20px;
    font-size: 16px;
}

OR:float: left;添加到li - DEMO

更多信息:

  

Fighting the Space Between Inline Block Elements - 作者:Chris Coyier

答案 1 :(得分:1)

尝试在li项目(float:left;)上使用display:inline-block;而非.items_board > .item 这里的工作示例http://jsfiddle.net/csdtesting/r7v5pfzx/