css - 如何将无序列表中的内容完美居中?

标签 css

我有一个无序列表的元素,我想让内容完美地居中在页面上,无论断点/屏幕尺寸是多少。我事先不知道会有多少元素。有谁知道我如何仅使用 CSS 来完成此任务?我知道这可以使用 JavaScript 来完成,但如果可能的话,我更喜欢仅使用 CSS。

截图: enter image description here

链接: http://jsfiddle.net/wrf39qev/1/

<ul>
    <li><img src="http://lorempixel.com/230/265/city/1"></li>
    <li><img src="http://lorempixel.com/230/265/city/2"></li>
    <li><img src="http://lorempixel.com/230/265/city/3"></li>
    <li><img src="http://lorempixel.com/230/265/city/4"></li>
    <li><img src="http://lorempixel.com/230/265/city/5"></li>
    <li><img src="http://lorempixel.com/230/265/city/6"></li>
    <li><img src="http://lorempixel.com/230/265/city/7"></li>
    <li><img src="http://lorempixel.com/230/265/city/8"></li>
    <li><img src="http://lorempixel.com/230/265/city/9"></li>
    <li><img src="http://lorempixel.com/230/265/city/10"></li>
</ul>       

最佳答案

有这样的事吗? ul 带有默认的内边距和边距,您需要专门将其删除。

编辑

设置 ul 的宽度,添加 margin:auto 并将元素向左浮动。这有帮助吗?

编辑:2

将显示 block 设置为图像并设置宽度:100%,高度自动;

编辑:3

您可以向 li 添加 33% 的宽度,以确保两侧的间隙相同。但是,如果您希望间隙相同并且想要容纳尽可能多的图像,则必须在断点处使用媒体查询。意思是,您需要写一些类似的内容,“从这个宽度到那个宽度,我在一列中需要 5 个图像,因此 (20%)”等等。这是唯一的办法。

这会将内容移动到中心并使元素左对齐。

ul { list-style-type: none;margin:0;padding:0; width:90%; display:block;margin: auto;}
li { 
    display: block;
    float:left;
    padding: 10px;
    width:50%;
    box-sizing:border-box;
}


img{
   display:block;
   width:100%;
   height:auto;
  }


@media only screen and (max-width:1200px){
    li{
        width:25%;
      }
  }


@media only screen and (max-width:900px){
    li{
        width:33%
      }
  }
<ul>
    <li><img src="http://lorempixel.com/230/265/city/1"></li>
    <li><img src="http://lorempixel.com/230/265/city/2"></li>
    <li><img src="http://lorempixel.com/230/265/city/3"></li>
    <li><img src="http://lorempixel.com/230/265/city/4"></li>
    <li><img src="http://lorempixel.com/230/265/city/5"></li>
    <li><img src="http://lorempixel.com/230/265/city/6"></li>
    <li><img src="http://lorempixel.com/230/265/city/7"></li>
    <li><img src="http://lorempixel.com/230/265/city/8"></li>
    <li><img src="http://lorempixel.com/230/265/city/9"></li>
    <li><img src="http://lorempixel.com/230/265/city/10"></li>

</ul>

关于css - 如何将无序列表中的内容完美居中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33071916/

相关文章:

html - 在 HTML 中——如何构建能够承受不断变化的文档方向的列?

css - 哪些字体支持大量粗细?/如何伪造字体粗细?

html - CSS - Webkit 转换不适用于输入类型

css - 如何在CSS中垂直翻转铁图标

css - 网络包少。背景图片问题

javascript - JS setTimeout() 函数

html - 使用Html在圆形位置添加菜单

jquery - 在 Hover 上通过 CSS 内容方法淡入文本

css - 使 Div 尽可能宽

javascript - 单击 div 时选中复选框,但不选中图像上的复选框