CSS:将ul li项目对齐到中心(带边距)而不使用flex模型

bra*_*r19 0 html css flexbox

我有这样的代码:

<ul class="tiles">
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

和css:

ul.tiles{
    width: 220px;
    height: 200px;
    list-style-type: none;
    background: #cecece;
    padding: 0;
}

li{
    display: inline-block;
    width: 50px;
    height: 50px;
    background: #8ac249;
    text-align: center;
    line-height: 50px;
    margin: 5px;
    float: left;
}
Run Code Online (Sandbox Code Playgroud)

看起来如此:

在此输入图像描述

将它更改为这样的模型是真实的(没有弹性框):

在此输入图像描述

如何?

And*_*iss 5

只需添加text-align:center到您的ul.文本对齐中心可用于许多情况,并且不仅可用于文本.它可以用在任何内联或内联块元素上,并且可以实现一些像这样的简洁小事.

ul.tiles{
    width: 220px;
    height: 200px;
    list-style-type: none;
    background: #cecece;
    padding: 0;
    text-align:center;
}

li{
    display: inline-block;
    width: 50px;
    height: 50px;
    background: #8ac249;
    text-align: center;
    line-height: 50px;
    margin: 5px;
}
Run Code Online (Sandbox Code Playgroud)
<ul class="tiles">
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ul>
Run Code Online (Sandbox Code Playgroud)