【发布时间】:2019-01-10 18:37:14
【问题描述】:
我有一个 HTML 和 CSS 代码,它在 Chrome 上运行良好。但是,在 Firefox 上,行为是不同的。
button#groupToggle {
background: 0 0;
border: 1px solid #e6e6ed;
color: #222;
float: none;
margin: 0 0 0 6px;
min-width: 200px;
padding: 8px 10px;
position: relative;
text-align: left;
cursor: pointer;
}
button#groupToggle::after {
background: #FFF;
border: 1px solid #e6e6ed;
color: #f8971d;
content: '>';
display: inline-block;
font: 900 12px/2.1 'Font Awesome 5 Free';
height: calc(100% + 1px);
left: 100%;
position: absolute;
text-align: center;
top: -1px;
width: 2em;
cursor: pointer;
border: ;
}
<button id="groupToggle">
<span>All selected</span>
</button>
在 All Selected 之后,有一个通过伪 CSS(之后)创建的按钮。将鼠标悬停在 Chrome 上时可以单击它,但在 Firefox 上则不能。有什么想法吗?
火狐版本:64.0
链接:https://codepen.io/anon/pen/zymvPj(请使用火狐测试)。
【问题讨论】:
-
谢谢@danielarend。我认为它适用于 IE 而不是 Firefox。
-
当我点击它时会发生什么?我在 chrome 上单击它,没有任何反应
-
它的作用就像 Firefox 不会从中传播任何事件。 :after 元素上的
left: calc(100% - 2em);会将其推到按钮的“点击区域”之上。在这种情况下,不是解决方案,而是解决方法。 -
如果您不希望用户单击所有选择文本,则不要将其设为按钮,而是将其设为按钮,然后禁用指针事件。这是反直觉的
标签: javascript html css