【问题标题】:dynamic centered alignment of a ul with cssul与css的动态居中对齐
【发布时间】:2017-05-15 20:01:46
【问题描述】:

我正在从以 ul li 格式打印的数据库中提取数据。由于数据不同,我们可能有 2 个 li 项目,或者我们可能有 10 个谁知道。

居中 ul 或宽度会发生变化的 div 的最佳方法是什么?我知道将 div 或 ul 居中,我会使用以下内容:

#name, ul {
 width:200px; /*set certain width */
 margin:0 auto; /* center div */
 display:block /* play friendly with the existing layout */
}

我的问题是 div 可能是 200px 或超过 200px 的数据,因此它不会真正居中,因为 div 中心对齐是基于宽度的。

任何帮助将不胜感激。

【问题讨论】:

  • 试试#name, ul { margin: 0 auto; display: block; text-align: center; padding: 0; }
  • 根据我的经验,我需要一个宽度来使 div 或 ul 居中。在您的示例中,缺少宽度会破坏任何对齐方式。
  • 你没有提供足够的信息

标签: html css layout css-float


【解决方案1】:

在这里,您可以将具有动态内容长度的ul 居中。

您可以将ul 包装在一个 div 中,并将该 DIV 上的 CSS 属性设置为

.wrapper{
  display:table;
  margin: 0 auto;
}

这将在div 中居中对齐ul 而与div 的宽度无关,您可以在下面看到一个示例:

Codepen 链接http://codepen.io/nadirlaskar/pen/RKbBpM

.wrapper{
  display:table;
  margin: 0 auto;
  background-color:yellow;
}

ul{
  background-color:red;
}

li{
  background-color:blue;
}
<div class="wrapper">
  <ul>
    <li>Item 1</li>
    <li>Item 2  is now large</li>  
  </ul>  
</div>

【讨论】:

  • 很抱歉,但这并不能解决当前的问题。不幸的是,甚至没有关闭
  • 检查我更新的答案,无论ul 内容的宽度如何,它都会居中ul。 (代码笔链接:codepen.io/nadirlaskar/pen/RKbBpM
  • 非常感谢!我从来没有遇到过这个解决方案。你摇滚!将此代码移至生产环境!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!
  • 干杯!!我很高兴听到这个消息:)
猜你喜欢
  • 1970-01-01
  • 2011-05-21
  • 1970-01-01
  • 1970-01-01
  • 2018-05-17
  • 1970-01-01
  • 2014-03-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多