html - 居中对齐 <dl> 及其子元素

标签 html css layout centering

我有一个简单的 <dl>元素与一些 child <dt><dd>标签。在 Fiddle 中你会看到正常的布局,但对于移动设备我试图让元素看起来像它们有 text-align: center。在他们。他们应该显示 2-a-side 但总体上应该看起来居中。

我试过将子元素设置为 display: inline-blocktext-align: center在 parent 身上,但我不知道将每对中的第一对“推”到新行上的方法。希望我已经解释得够清楚了……

请查看 Fiddle 并提出任何建议,谢谢。

https://jsfiddle.net/4ptdLg92/

最佳答案

我删除了所有 float 并添加了

.data_table dd:after {
  content: '';
  display: block;
}

现在你可以在@media部分设置text-align: center:

body {
    text-align: center;
}
.data_table {
    display: inline-block;
    overflow: hidden;
    text-align: left;
    background: #efefef;
    padding: 10px;
    width: 300px;
}
.data_table dt, .data_table dd {
    margin: 0;
    margin-bottom: 2px;
    display: inline;
}
.data_table dt {
    padding-right: 8px;
}
.data_table dd:after {
    content: '';
    display: block;
}
@media (max-width: 600px){
    .data_table {
        text-align: center;
    }
}
<dl class="data_table">
    <dt>One:</dt>
    <dd>Value 1</dd>
    <dt>Two:</dt>
    <dd>Value 2</dd>
    <dt>Three:</dt>
    <dd>Value 3</dd>
    <dt>Four:</dt>
    <dd>Value 4</dd>
</dl>

https://jsfiddle.net/4ptdLg92/2/

关于html - 居中对齐 <dl> 及其子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32076466/

相关文章:

html - 如何在 HTML5 中包含多个 XML 命名空间

html - 重新使用代码来显示菜单的事件链接

html - <form>内的样式<select>

html - 奇怪的布局行为

javascript - 使用带有部分地址的 if 语句来寻址链接

android - 我的 phonegap 应用程序在 Android 高清手机、HDPI 和 XHDPI 手机中看起来更小

javascript - 单击 iframe(同一域)内的链接时自动调整 iframe 的大小

html - CSS float 文本栏

apache-flex - vbox、hbox 内的 Flex 间距

android - 垂直对齐重力没有响应