5

我有各种 HTML 元素,可以通过 Drag'n'Drop 移动。为了指出删除元素(给用户)的有效区域,我正在更改光标外观。我通过简单地通过包含一个简单的“cursor:xxx”的 JS 应用 CSS 类来做到这一点。这适用于 DIV 和 SPAN。

但是当我尝试使用文本输入或文本区域来做到这一点时,光标就变成了“|” (文本编辑光标)。

有没有办法覆盖此默认行为或是否有任何解决方法(不必用任何假人替换这些元素,因为这将花费大量时间,因为某些功能会在这些元素上中继)

CSS:

body.draggingInvalid ,
body.draggingInvalid * {
    cursor:not-allowed !important;
    -moz-user-select: none;
    -ms-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}

HTML:

<input type="text" style="width: 200px; height: 20px;">
4

2 回答 2

2

尝试使用!important

input {
    cursor: pointer !important;
}

这将覆盖所有输入元素的“光标”属性。

编辑:

如果这不起作用,请仔细检查您的选择器。您可能想在body.draggingInvalid之间添加空格

body .draggingInvalid {
}
于 2013-04-24T11:58:21.263 回答
0

首先让我们创建输入并给它一个名为 changeCrusor 的类

<input id='test' class="changeCrusor" placeholder='nedys answer'>

第二个让我们创建自己的类(在你的情况下,也许有些东西会覆盖你可以使用的输入的默认行为!重要但它真的不推荐做事的方式

.changeCrusor {cursor: text !important;} 
于 2020-04-14T10:34:53.220 回答