我一直挑战自己,以仅HTML和CSS(无Javascript)创建视觉上动态的交互式体验。到目前为止,我还没有遇到我在纯CSS和HTML中无法实现的任何功能。这可能有点困难。
我需要防止双击用户<a>
,<input type="submit">
和<button>
标签。这是为了防止他们重复提交表单或意外向URL发出2个GET请求。如何在纯CSS中完成此操作?即使我们不能disabled
没有JS进行设置,也应该有一些遮罩技术或样式组合可以在2020年处理。
这是一个简单的尝试示例:
.clicky:focus{
display: none;
pointer-events: none;
}
<a href="#down" class="clicky">test</a>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p id="down">target</p>
不幸的是,由于某些原因,这会在触发实际的点击事件之前将其禁用。也许锚不是最好的测试方法?我将继续作进一步的尝试。
您可以在第一次提交表单后让表单自己给一个类吗?
—
SIGSTACKFAULT
也许
—
杰里米·哈里斯
pointer-events: all
是默认设置,但不是处于:active或:focus状态?喜欢pointer-events: none
为那些州设定的?
可能
—
Paragon512
el:active, el:focus
与指针事件结合在一起
这样行吗?:active {display:none; //例如)
—
MD Hesari
添加尝试。不过,它在点击之前禁用了它。
—
Paragon512