- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
问题摘录:我有一个菜单可以在所有浏览器中使用,但在 IE7 上有问题。我解决了抛出 zoom:1
但通常与 hasLayout
相关的问题涉及 float 、位置和内容。为什么这次 zoom
成功了?
我有一个适用于所有浏览器(甚至在 IE8+ 上)的菜单,如下所示:
由一个 LI
组成,其中包含一个 DIV
,使用 .png BG 作为 1px 边框,还有一个带有图标的 block A
和文字。
恢复的 HTML 将是 ul.adminMenu>li>(div.menuBorder)+(a{link})
:
<ul class="adminMenu">
<li>
<div class="menuBorder"></div>
<a href="">link</a>
</li>
(...other li's...)
</ul>
li.active
的 BG 变暗了。
不幸的是,我有义务让它在 IE7 标准模式下工作(这解释了为什么我使用带有 .png 的 div 而不是 RGBA 边框),它看起来像这样:
是的。 li
的开头和“border” div
之间有一个空格。我已经尝试过以下方法:
它们都不起作用,开发工具上也没有任何内容指向页边距或边框(所有 !important
均为 0)。
所以问题是:没有 float 元素,没有绝对定位的东西,只有 block 。为什么 zoom:1
(触发 hasLayout
)让所有该死的空间消失?
The JsFiddle (有一些额外的标记 div 但忽略它们,为了简单起见我删除了更多的东西)
我知道它是 IE“功能(错误)”的一部分,但我一直在寻找其他东西作为答案。
最佳答案
Lists
Lists are affected by layout applied either to the list (ol, ul) or to the list elements (li). Different versions of IE react differently. The most evident effects are on the list markers (fully customized lists where the markers are not required won't have these problems.) The markers are probably created by internally adding some elements that are somewhat “attached” to the list elements (usually hangs out of them) and seems rather unstable. Unfortunately, being “internal” only objects, they cannot be accessed to try to correct mis-behaviours.
The most evident effects are:
Layout applied to a list makes the markers to disappear or to be differently/wrongly positioned.
Sometimes they can be restored by changing margins on the list elements. This looks like a consequence of the fact that a layout element tends to crop internal elements hanging out of it.
Layout applied to list elements creates the same problems as above, and more (extra vertical space between list items)
A further problem is that (in ordered lists) any list element with layout seems to have its own counter. Let's say we have an ordered list with five elements where only the third has layout. We'll see this:
1... 2... 1... 4... 5...
Moreover when a list element with layout displays on multiple lines the marker is vertically aligned at the bottom (not at the top, as expected.)
Some of these problems cannot be cured, so when the markers are desired it's better to avoid layout on lists and list elements. If it's necessary to apply some dimension, this is better applied to other elements: for example a width can be applied to an external wrapper, and a height to the content of each list item.
Another common problem with lists in IE occurs when the content of any li is an anchor with display: block. In these conditions the white space between list items is not ignored and usually displayed as an extra line for each li. One of the methods to avoid this extra vertical space is to give layout to the block anchors. This also has the benefit of making the whole rectangular area of the anchors clickable.
关于css - IE7 - UL > LI 菜单带有 'extra' 填充 - 为什么缩放 :1 (`hasLayout` ) makes it work?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16471910/
我正在尝试使用 jQuery 来提交一个基本的 Accordion 样式菜单。 这是菜单: http://www.cybart.com/bscg/ 这是为其提供 Accordion 功能的代码片段:
这是我的网站: http://www.simply-a-christian.com/index.html 在导航栏上,如果您移动到: 信念 玛丽安教义 您可以看到每个 Marian Dogma(列出了
这可能是一个很容易回答的问题,但是,我找不到解决方案。我已经建立了一个非常简单的菜单,每当我将鼠标悬停在 ul 父项上时,它的子项 ul ul 就会变得可见。基本上它是有效的,但 parent 让位于
这是一张图片: 问题是(你可以看到):“页面”按钮太低,无法点击。我想要的是它应该靠近“联系人”。 现在是代码: HTML Home About
我有一个这样的嵌套 ul 列表: Subcat Subcat2
如果标题不好理解,我来解释一下... 我有一个 css/jquery 切换菜单。按“+”号时它变大,按“-”号时它变小。我使几个元素的填充、边距和高度在切换/单击时发生变化。菜单顶部充满了链接,然后当
我正在尝试创建一个列表,该列表会在单击上/下时更改它的第一个元素。 This is what i want to do. 此代码运行良好。但问题是我也在我网站的主菜单中使用列表,并且这段代码也在我的主
我需要使用水平缩放的 ul > li > ul 的组合来创建一个菜单。每个 ul 都应该有一个 max-height 并在溢出时滚动。悬停在 li 上时,如果里面有另一个 ul 标签,它应该会在右侧打
我正在 ul 中编写 ul 来制作 Accordion 式菜单。但是当我在 html 验证器中检查下面的代码时,它给了我这些错误 Element ul not allowed as child of
我有两个列表,第二个列表是可排序的,我可以从第一个列表拖动到第二个列表,但不知道如何从第一个列表中删除。 如果我删除 helper: "clone" ,该项目 (li) 会被删除,但拖放操作效果不佳(
JSFiddle 问题:https://jsfiddle.net/td6szj3o/ /我有一个 ul li,每个 li 都有标准文本项。该列表是动态的,因此有时每个内容 li 小于其所在容器的 wi
我有两个元素 - 一个在另一个里面。问题是第二个元素显示在第一个 ul li 元素的顶部。 HTML: Home Merchants
我有一些结构如下的菜单: First level link 1 Child link 1 Child link 2
我有很长的ul,李的数目不是恒定的 1 2 3 4 5 6 7 8 9 我想使用Moovweb SDK将其分为两个ul。 1 2 3 4
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎偏离主题,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或 include a mini
我有一棵信息“树”,显示在许多嵌套列表中(ul li ul li ....)。两个问题: 当我点击时,父 ul 和子 ul 都会切换。 如果我点击在其中没有 ul 的嵌套列表中(例如,下面的 Cran
我正在尝试在 jQuery 中创建以下内容: 我有一个项目列表(例如 10 个)。如果项目数超过 6,则将剩余项目(从 6 到 10)复制到新的 UL 中以创建下拉菜单结构。 菜单的第一个版本是 ht
嘿大家 - 我在工作中尝试 jquery 的第二天,有点卡住了。 我有一个无序列表的链接..在无序列表的链接中 点击 ,我想要的 child 变得可见。 点击(文档上的任何位置)后,我想要 child
嗨,这就是我想要实现的目标。我有一个 ID="columns"的 div,在本例中我有 3 列,但可能会有更多或更少...我正在使用 JQuery 动态添加列表项。
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: Using .after() to add html closing and open tags 我想显示高度几乎相
我是一名优秀的程序员,十分优秀!