XHtml 严格、浮动:居中?
我在 Xhtml Strict 1.0 和 Css 上遇到了困难。我几乎没有解决方案了。
我的网站网址:http://www.pro-turk.net/beta/
我为我的网站制作了一个 jquery 多级下拉菜单。
看起来不错,但我在导航菜单上使用了 css 显示属性的 inline-block 属性,该属性是 css 2.1 的一部分,并且某些浏览器(包括 ie6 和 ie7)不支持。
我想让#nav > li 元素块级元素,但要做到这一点并使所有这些元素位于同一行,唯一的方法是在 #nav > 中使用 float李。但我想将它们集中在其父级(菜单栏)中。所以我需要像 float:center 这样的东西(我知道它很愚蠢并且不存在)。但是有没有一种方法可以将块级元素包含为没有换行符的子元素(我的意思是不创建块级元素)。
问候。
I'm having hard time with Xhtml Strict 1.0 and Css. And I'm almost out of solutions.
My Site Url: http://www.pro-turk.net/beta/
I made a jquery multilevel dropdown menu for my site.
It looks like OK, but I have used inline-block property of css display attribute on navigation menu which is a part of css 2.1 and isn't supported by some browsers (including ie6 and ie7).
I want to make #nav > li elements block level elements, but to do this and having all of them in same line, the only way is using float in #nav > li. But I want to center them in their parent (the menu bar). So I need something like float:center (I know it's pretty stupid and doesn't exist). But is there a way to include block level elements as children elements without linebreaks (I mean without making a block level element).
Regards.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使
li
向左或向右浮动并使菜单本身居中。使菜单的宽度为其元素之和。编辑:由于您不知道菜单的宽度(它是动态的),我们将遇到没有表格替代方案的情况。
PS 有一些表格可以用较新的 CSS3 扩展来替代,例如
display:table | table-cell
等,但它还没有得到广泛的支持。You can make
li
float left or right and make the menu itself centered. Make the menu the width of the sum of its elements.EDIT: Since you don't know the width of the menu (it's dynamic) we're coming to the very case when there is no alternative to tables.
P.S. There is some substitution for tables with newer CSS3 extensions like
display:table | table-cell
etc., but it doesn't have a wide-spread support yet.IE6 或 IE7 不支持 display:inline-block,但您可以通过使用 display:inline 并确保在这些元素上设置 hasLayout(例如使用 Zoom:1)在这些浏览器中获得相同的效果。使用条件注释将不同的 css 仅定向到这些浏览器。
display:inline-block isn't supported in IE6 or IE7, but you can get the same effect in those browsers by using display:inline and ensuring that hasLayout is set on those element by, say, using zoom:1. Use conditional comments to direct the different css to those browsers only.
我认为在 css2 中没有不使用表格的解决方案。
I think there is no solution for it in css2 without using tables.