html - 带元素符号的一行中的无序列表项

标签 html css media-queries

我正在构建一个具有无序列表的响应式页面。我的要求是 li 元素以更大的屏幕分辨率与元素符号显示在一行中:

enter image description here

并在缩小时分解为每行一个要点:

enter image description here

到目前为止,我已经将所有三行无元素符号和三行无元素符号合而为一。当我为较小的屏幕尺寸获得元素符号时,我不会为更大的屏幕排成一行。我不确定我哪里出错了。我猜我在 list-style-type 设置中遗漏了一些东西。

HTML

<div>

<ul class="list">
    <li>Text of line 1 Text of line 1 Text of line 1 Text of line 1 Text of line 1 </li>
    <li>Text of line 2 Text of line 2 Text of line 1 Text of line 2 Text of line 2  </li>
    <li>Text of line 3 Text of line 3 Text of line 1 Text of line 3 Text of line 3 </li>
</ul>

</div>

CSS

.list li {
  display: inline;
  list-style: none;
}

@media screen and (max-width: 600px) {
  .list{
     display: block;
     list-style: circle;
  }
}

fiddle 链接:http://jsfiddle.net/ug5k3k15/

最佳答案

首先请注意,您应该在 @media 规则中使用 .list li 选择器来定位列表项。

此外 - 正如我在 my comment 中提到的- 由于您正在将 li 元素的显示类型更改为 inlineblocklist-item 将没有逗留影响元素:

12.5.1 Lists: the 'list-style-type', 'list-style',... properties

list-style Applies to: elements with display: list-item

一种选择是改用 CSS float,如下所示:

EXAMPLE HERE (查看演示以了解更多详细信息,包括 clearfix)

.list li {
    float: left;
    list-style-position: inside;
    list-style-type: disc;
    margin-right: 1em;
}

@media screen and (max-width: 600px) {
    .list li {
        float: none;
        list-style-position: outside;
        margin: 0;
    }
}

关于html - 带元素符号的一行中的无序列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25557509/

相关文章:

css - 如何使输入框和按钮在 bootstrap 中对齐?

javascript - 单击箭头时如何使箭头旋转?

html - 如何使元素宽度为 : 100% minus padding?

html - 在右下角显示带有背景图像的数字

css - 全 Angular 页脚不会粘在底部

javascript - 我应该为这个响应式设计使用 javascript 吗?

html - 为什么我的网站无法在手机上扩展?

php - 创建一个类似于页面的 metro UI

html - 在 HTML 页面上循环访问 Ruby 数组中的值

css - 响应式网页设计断点引用了哪些单元?