- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有以下 html:
<div id="container">
<ul>
<li>element 1</li>
<li>element 2</li>
</ul>
</div>
应用如下CSS:
#container { width:100%; overflow:auto; }
#container ul { width: 100%; }
#container li { width: 100%; }
所以现在我想要不确定数量的元素 ( <li>
),所有元素都具有 100% 的宽度(因此它们可以根据浏览器的窗口大小进行相应调整)但并排显示水平滚动条容器。
我试过在 ul 的 css 上放置“display:inline”,在 li 的 css 上放置“float:left”,但没有成功。
有什么建议吗?
此外,请考虑一下我正在努力使其尽可能“跨浏览器兼容”。
提前致谢。
最佳答案
和其他人一样,我很难理解您到底在寻找什么,但这是否符合您的要求?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Horizontal 100% LIs</title>
<style type="text/css">
#container { width:100%; overflow:auto;}
#container ul { padding:0; margin:0; white-space:nowrap; }
#container li { width: 100%; list-style-type:none; display:inline-block; }
* html #container li { display:inline; } /* IE6 hack */
* html #container { padding-bottom:17px;} /* IE6 hack */
*:first-child+html #container li { display:inline; } /* IE7 hack */
*:first-child+html #container { padding-bottom:17px; overflow-y:hidden; } /* IE7 hack */
</style>
</head>
<body>
<div id="container">
<ul>
<li style="background-color:red">element 1</li><li style="background-color:green">element 2</li><li style="background-color:blue">element 3</li>
</ul>
</div>
</body>
</html>
将 LI 连接到一条线上有两个部分。 ul 上的 white-space:nowrap 停止任何自动换行,LIs 上的 display:inline-block 允许它们一个接一个地运行,但在它们上设置了宽度、填充和边距。对于符合标准的浏览器,这就足够了。
但是 IE6 和 IE7 需要特殊处理。它们不正确支持 display:inline-block,但幸运的是 display:inline 在设置了 hasLayout 的元素上给出了非常类似于 display:inline-block 的行为。 width:100% 已经强制在 LI 上设置 hasLayout,所以我们要做的就是将 display:inline 定向到 IE6 和 IE7。有很多方法可以做到这一点(条件注释在 StackOverflow 上很流行),但在这里我选择了 * html 和 *:first-child+html hacks 来完成这项工作。
此外,IE6 和 IE7 还存在滚动条覆盖内容的另一个错误,因此为容器提供了一个 padding-bottom 来为滚动条腾出空间。滚动条是一个平台控件,因此无法准确知道它的高度,但 17 像素似乎适用于大多数情况。
最后,IE7 也想加入垂直滚动条,所以针对 IE7 的 overflow-y:hidden 阻止了这种情况的发生。
(padding:0、margin:0、list-style:none 和各个 LI 上的样式只是为了更清楚地显示正在发生的事情。)
关于html - 如何内联显示多个 100% 宽度的 <li>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2434270/
好吧,标题说明了一切。我的 javascript 函数构建一些“ block ”并使用 和 创建它们。问题是,它删除了所有其他 在网页上。 编辑:(好吧,我假设这个函数是造成这个的原因。删除我的意思是
这个 HTML 结构有效吗? Item 1 Item 2 Item 3 Item 4 Item 5 Item 6
我正在尝试在 UL 中添加标题因为你不能在 UL 中使用 H2如果按照我展示的方式使用它可以吗? News roll News 1 News 2 我的一位 friend 告诉我
这是我的 代码风格。 li{ font-family: Arial, sans-serif; font-size: 100%; color: black; display : list-item;
我正在使用 a 进行水平导航,感谢问题:Separators For Navigation ,我读到了使用 li + li 设置基于图像的元素分隔符的好方法。 (伪?)选择器。 在我的代码中,我为
我有一个 Div 容器,其中包含 4 我正在做的是在前面加上 进入并删除最后一个 我很容易使用 $('#news-ul li:last').remove() $('#news-ul').prepe
这是 html: menu item menu item menu item menu item menu item 如果我按“a”链接,它会将“当
我有 ul-li 列表 1 2 3 A B 我可以在列表中使用纯 css 最后一个选择器“.digit”吗? .digit 的数量未知 ul li.digit:nth-last-ch
我有这种情况,1- 我想删除一个带有两个图标的 li,它作为一个跨度在里面:一个是选中或取消选中相应的 li,另一个是删除那个 li。2- 我还想通过单击图标(选中图标)同时单击 li 来选中或取消选
如果标题不好理解,我来解释一下... 我有一个 css/jquery 切换菜单。按“+”号时它变大,按“-”号时它变小。我使几个元素的填充、边距和高度在切换/单击时发生变化。菜单顶部充满了链接,然后当
我有一个脚本 ( JsFiddle here ) 检测 li block 元素何时在页面上垂直居中并为其分配一个 .centered 类以使其更大通过 CSS。 .centered { hei
代码在这里:http://jsfiddle.net/C5mTf/49/我不知道为什么。下面的代码有问题吗? $("#menu").on('click','li',function (){ va
我为这个问题苦苦挣扎了几个小时,但仍然无法解决问题。 我有这样的 html 代码: aaaa11 bbbb11 我想知道如何使用 css 让 每里一行显示。但是 标签仍然具有垂
我需要使用水平缩放的 ul > li > ul 的组合来创建一个菜单。每个 ul 都应该有一个 max-height 并在溢出时滚动。悬停在 li 上时,如果里面有另一个 ul 标签,它应该会在右侧打
我了解到,如果我指的是 在 内或 在 CSS 中我应该使用 ol > li或 ul > li但是一旦我忘记在 ol 和 li 之间放置标志,我发现它仍然有效。执行此操作的正确方法是什么? 最佳答案
Question 1 Answer: $('#addquestion').click(function() { var $question_number
我如何在 中显示我的数组值? 我的代码: HTML JS var myList = [ ['1','one'], ['1','two'], ['1','th
我在使用代码编辑器时遇到了问题所以就在这里 Item1 Item 1.1 Item 1.2 Item2
我正在为我的网站创建响应式移动版本。正如您在此 jsfiddle 中看到的那样, 当用户将鼠标悬停在 上时项,菜单打开但覆盖了 而不是展开菜单。 我已经添加了 display: block在不同的地
我正在尝试创建一个网站,但我偶然发现了一个小问题,我正在使用 bootsnipp(一个侧面菜单)中的一个片段,我无法让它工作,所以链接将覆盖整个 LI,而不是你必须按自己的文字如果我改变它,那么它会坐
我是一名优秀的程序员,十分优秀!