我一页上有一个div
.它有一个onclick
事件处理程序.当用户点击div
时,我希望会调用事件处理程序.但是CSS规则也有:当div
有焦点时,它会向右移动50个像素(远离鼠标指针).因此,onclick
事件处理程序不会被调用,即使用户在开始时清楚地点击了div
.就好像浏览器首先应用了CSS,然后才决定用户点击了什么.
我在这里做了一个简单的演示:https://jsbin.com/yalazam/edit?html,css,console,output点击第四列中的黄色方块(即the div
),然后查看第三列中的控制台.只会出现一条信息"focus square"
,而不会出现一条信息"click square"
.
这种行为有意义吗?它有用吗?或者我应该把它当作浏览器的一种奇怪行为来接受吗?