首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >css:水平居中浮动图片库

问css:水平居中浮动图片库
EN

Stack Overflow用户
提问于 2012-11-21 23:16:25
回答 1查看 968关注 0票数 2

我有一个类似于图片库的带有文本内容的块项目列表。使用display: table* stuff将文本内容与底部对齐。该列表的宽度不是固定的,因为它通过创建更多列来扩展到视口宽度。我想让列表在屏幕上居中,这样底部的行将仍然与所有其他行的左侧对齐(这是我不知道如何使用inline-block的原因之一)。示例:

代码语言:javascript
复制
<!doctype html>
<html>
    <head>
        <title>test</title>
        <style>
            ul{
                margin: 0;
                padding: 0;
                list-style: none;
            }
            ul:after{
                display: block;
                clear: both;
                content: ' ';
            }
            li{
                display: table;
                float: left;
                border: 1px solid red;
                width: 300px;
                height: 300px;
            }
            .gridRow{
                display: table-row;
            }
            .gridCell{
                display: table-cell;
                vertical-align: bottom;
            }
        </style>
    </head>
    <body>
        <ul>
            <li><span class="gridRow"><span class="gridCell">1</span></span></li>
            <li><span class="gridRow"><span class="gridCell">2</span></span></li>
            <li><span class="gridRow"><span class="gridCell">3</span></span></li>
            <li><span class="gridRow"><span class="gridCell">4</span></span></li>
            <li><span class="gridRow"><span class="gridCell">5</span></span></li>
            <li><span class="gridRow"><span class="gridCell">6</span></span></li>
            <li><span class="gridRow"><span class="gridCell">7</span></span></li>
            <li><span class="gridRow"><span class="gridCell">8</span></span></li>
            <li><span class="gridRow"><span class="gridCell">9</span></span></li>
            <li><span class="gridRow"><span class="gridCell">10</span></span></li>
            <li><span class="gridRow"><span class="gridCell">11</span></span></li>
            <li><span class="gridRow"><span class="gridCell">12</span></span></li>
            <li><span class="gridRow"><span class="gridCell">13</span></span></li>
            <li><span class="gridRow"><span class="gridCell">14</span></span></li>
            <li><span class="gridRow"><span class="gridCell">15</span></span></li>
            <li><span class="gridRow"><span class="gridCell">16</span></span></li>
            <li><span class="gridRow"><span class="gridCell">17</span></span></li>
            <li><span class="gridRow"><span class="gridCell">18</span></span></li>
            <li><span class="gridRow"><span class="gridCell">19</span></span></li>
        </ul>
    </body>
</html>
EN

回答 1

Stack Overflow用户

发布于 2012-11-21 23:19:25

你需要给UL一个宽度,或者把它放在一个包含宽度和"overflow:auto;“的元素中。

宽度可以是px或%。

然后将容器的边距设置为" margin :0 auto;“

然后,您只需将LI元素设置为"display:inline-block;“或赋予它们"float:left;”

示例:http://jsfiddle.net/jDqbJ/1/

代码语言:javascript
复制
.container {
 width:75%;
 overflow:auto;
 margin:0 auto;
}

.container ul li {
 float:left;width:75px;
 height:75px;
 background:#ccc;
 margin:0 10px 20px 0;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13496280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档