css - при - курсор рука




Сделайте курсор рукой, когда пользователь наводит курсор на элемент списка (15)

У меня есть список, и у меня есть обработчик кликов для его элементов:

<ul>
  <li>foo</li>
  <li>goo</li>
</ul>

Как изменить указатель мыши на указатель руки (например, при наведении курсора на кнопку)? Прямо сейчас указатель превращается в указатель выбора текста, когда я наводил курсор на элементы списка.


Использование HTML Hack

Примечание: это не рекомендуется, так как считается плохой практикой

Обертка содержимого в привязном теге, содержащем атрибут href будет работать без явного применения cursor: pointer; свойство с побочным эффектом свойств привязки (с поправкой на CSS):

<a href="#" style="text-decoration: initial; color: initial;"><div>This is bad practice, but it works.</div></a>


CSS:

.auto            { cursor: auto; }
.default         { cursor: default; }
.none            { cursor: none; }
.context-menu    { cursor: context-menu; }
.help            { cursor: help; }
.pointer         { cursor: pointer; }
.progress        { cursor: progress; }
.wait            { cursor: wait; }
.cell            { cursor: cell; }
.crosshair       { cursor: crosshair; }
.text            { cursor: text; }
.vertical-text   { cursor: vertical-text; }
.alias           { cursor: alias; }
.copy            { cursor: copy; }
.move            { cursor: move; }
.no-drop         { cursor: no-drop; }
.not-allowed     { cursor: not-allowed; }
.all-scroll      { cursor: all-scroll; }
.col-resize      { cursor: col-resize; }
.row-resize      { cursor: row-resize; }
.n-resize        { cursor: n-resize; }
.e-resize        { cursor: e-resize; }
.s-resize        { cursor: s-resize; }
.w-resize        { cursor: w-resize; }
.ns-resize       { cursor: ns-resize; }
.ew-resize       { cursor: ew-resize; }
.ne-resize       { cursor: ne-resize; }
.nw-resize       { cursor: nw-resize; }
.se-resize       { cursor: se-resize; }
.sw-resize       { cursor: sw-resize; }
.nesw-resize     { cursor: nesw-resize; }
.nwse-resize     { cursor: nwse-resize; }

Вы также можете иметь курсор для изображения:

.img-cur {
   cursor: url(images/cursor.png), auto;
}

Вы можете использовать одно из следующих действий:

li:hover
{
 cursor: pointer;
}

или же

li
{
 cursor: pointer;
}

Рабочий пример 1:

    li:hover
    {
     cursor: pointer;
    }
<ul>
  <li>foo</li>
  <li>bar</li>
</ul>

Рабочий пример 2:

    li
    {
     cursor: pointer;
    }
<ul>
  <li>foo</li>
  <li>bar</li>
</ul>


Вы можете использовать приведенный ниже код

li: hover {cursor: pointer; }


Для того, чтобы сделать что-нибудь доступным для обработки «mousechange», вы можете добавить класс CSS:

.mousechange:hover {
  cursor: pointer;
}
<span class="mousechange">Some text here</span>

Я бы не сказал, чтобы использовать cursor:hand поскольку он был действителен только для IE 5.5 и ниже, а IE 6 - с XP (2002). Люди будут получать подсказку для обновления, когда их браузер перестанет работать на них. Кроме того, в Visual Studio он будет красным подчеркивать эту запись. Это говорит мне:

Проверка (CSS 3.0): «рука» не является допустимым значением для свойства «курсор»


Для этого вам не требуется jQuery, просто используйте следующий css:

li {cursor: pointer}

И вуаля! Handy.


Проверьте это, я получаю его от w3schools.com. Благодарю.

<!DOCTYPE html>
    <html>
    <head>
    <style>
    .alias {cursor: alias;}
    .all-scroll {cursor: all-scroll;}
    .auto {cursor: auto;}
    .cell {cursor: cell;}
    .context-menu {cursor: context-menu;}
    .col-resize {cursor: col-resize;}
    .copy {cursor: copy;}
    .crosshair {cursor: crosshair;}
    .default {cursor: default;}
    .e-resize {cursor: e-resize;}
    .ew-resize {cursor: ew-resize;}
    .grab {cursor: -webkit-grab; cursor: grab;}
    .grabbing {cursor: -webkit-grabbing; cursor: grabbing;}
    .help {cursor: help;}
    .move {cursor: move;}
    .n-resize {cursor: n-resize;}
    .ne-resize {cursor: ne-resize;}
    .nesw-resize {cursor: nesw-resize;}
    .ns-resize {cursor: ns-resize;}
    .nw-resize {cursor: nw-resize;}
    .nwse-resize {cursor: nwse-resize;}
    .no-drop {cursor: no-drop;}
    .none {cursor: none;}
    .not-allowed {cursor: not-allowed;}
    .pointer {cursor: pointer;}
    .progress {cursor: progress;}
    .row-resize {cursor: row-resize;}
    .s-resize {cursor: s-resize;}
    .se-resize {cursor: se-resize;}
    .sw-resize {cursor: sw-resize;}
    .text {cursor: text;}
    .url {cursor: url(myBall.cur),auto;}
    .w-resize {cursor: w-resize;}
    .wait {cursor: wait;}
    .zoom-in {cursor: zoom-in;}
    .zoom-out {cursor: zoom-out;}
    </style>
    </head>
    <body>

    <h1>The cursor Property</h1>
    <p>Mouse over the words to change the mouse cursor.</p>

    <p class="alias">alias</p>
    <p class="all-scroll">all-scroll</p>
    <p class="auto">auto</p>
    <p class="cell">cell</p>
    <p class="context-menu">context-menu</p>
    <p class="col-resize">col-resize</p>
    <p class="copy">copy</p>
    <p class="crosshair">crosshair</p>
    <p class="default">default</p>
    <p class="e-resize">e-resize</p>
    <p class="ew-resize">ew-resize</p>
    <p class="grab">grab</p>
    <p class="grabbing">grabbing</p>
    <p class="help">help</p>
    <p class="move">move</p>
    <p class="n-resize">n-resize</p>
    <p class="ne-resize">ne-resize</p>
    <p class="nesw-resize">nesw-resize</p>
    <p class="ns-resize">ns-resize</p>
    <p class="nw-resize">nw-resize</p>
    <p class="nwse-resize">nwse-resize</p>
    <p class="no-drop">no-drop</p>
    <p class="none">none</p>
    <p class="not-allowed">not-allowed</p>
    <p class="pointer">pointer</p>
    <p class="progress">progress</p>
    <p class="row-resize">row-resize</p>
    <p class="s-resize">s-resize</p>
    <p class="se-resize">se-resize</p>
    <p class="sw-resize">sw-resize</p>
    <p class="text">text</p>
    <p class="url">url</p>
    <p class="w-resize">w-resize</p>
    <p class="wait">wait</p>
    <p class="zoom-in">zoom-in</p>
    <p class="zoom-out">zoom-out</p>

    </body>
    </html>

Просто для полноты:

cursor: -webkit-grab;

также дает руку, которую вы знаете при перемещении изображения вокруг.

Весьма полезно, если вы хотите эмулировать поведение захвата с помощью jquery и mousedown.


С течением времени, как говорили люди, теперь вы можете просто использовать:

li { cursor: pointer; }

Это должно работать

<style>
li:hover{
    cursor: hand;
}
</style>

Я думаю, было бы разумно показывать только ручку / указатель курсора, когда доступен javascript. Таким образом, у людей не будет ощущения, что они могут нажимать на то, что не доступно для кликов.

Чтобы достичь этого, вы можете использовать javascript для добавления css к элементу, подобному этому

$("li").css({"cursor":"pointer"});

или привязать его непосредственно к обработчику кликов.

Или, когда используется modernizer в сочетании с <html class="no-js"> , css будет выглядеть так:

.js li { cursor: pointer; }

для основного символа руки: попробуйте

cursor:pointer 

Если вам нужен ручной символ, например, перетащите какой-нибудь элемент и опустите его,

пытаться

cursor:grab

li:hover {
    cursor: pointer;
}

Другие допустимые значения (которые не hand ) для текущей спецификации HTML можно просмотреть here .


li:hover {cursor: hand; cursor: pointer;}







css