Почему не рука при наведении ссылки (<a>)? - PullRequest
7 голосов
/ 18 февраля 2011

Привет

Я знаю, что при наведении курсора на объект можно ставить руку в нужное положение:

CSS :

cursor:             hand;
cursor:             pointer;

Это должно быть сделано автоматически с элементом ссылки, который выглядит следующим образом:

<a onclick="" class="btn1">
  <span>Sök</span>
</a>

Но в моем случае это не так?

С помощью firebug я вижу, что применяется следующий CSS *

<a> element
a.btn1 {
    background: url("Images/Menus/bg_button_a.gif") no-repeat scroll right top transparent;
    color: #444444;
    display: block;
    float: left;
    font: 12px arial,sans-serif;
    height: 24px;
    margin-right: 6px;
    padding-right: 18px;
    text-decoration: none;
}
* {
    margin: 0;
    padding: 0;
}
body {
    font-family: Arial,Verdana,serif;
    font-size: 0.81em;
}

И

SPAN element
    a.btn1 span {
        background: url("Images/Menus/bg_button_span.gif") no-repeat scroll 0 0 transparent;
        display: block;
        line-height: 14px;
        padding: 5px 0 5px 18px;
    }
    Controls.css (rad 80)
    * {
        margin: 0;
    }

    a.btn1 {
        color: #444444;
        font: 12px arial,sans-serif;
        text-decoration: none;
    }

    body {
        font-family: Arial,Verdana,serif;
        font-size: 0.81em;
    }

Как я могу отследить эту проблему?

BestRegards

Ответы [ 4 ]

11 голосов
/ 18 февраля 2011

Рука появляется только в том случае, если для ЯКОРЯ установлен атрибут href.

Демонстрационная версия: http://jsfiddle.net/KAEbR/

6 голосов
/ 18 февраля 2011

Вероятно, потому что у вас нет значения "href", вы можете изменить его на

<a href="#" onclick="" class="btn1"/>

Вы также можете добавить следующий css, чтобы рука всегда появлялась для ссылок:

a{ cursor: pointer;}
3 голосов
/ 18 февраля 2011

Без атрибута href тег a не объявляет гиперссылку.Если он обладает атрибутом name или id, он может объявить вместо него destination гиперссылки.(http://www.w3.org/TR/html4/struct/links.html#anchors-with-id)

Если элемент, который вы хотите объявить, не имеет семантического сходства с гиперссылкой, и вы полагаетесь на CSS, чтобы он выглядел как единое целое, зачем беспокоиться? С таким же успехом можно использовать любой старый span.

Что вы должны не сделать, это написать a { cursor:pointer; } в ваш CSS, в результате чего любые элементы a будут отображать руку при наведении, даже те, которые не являются гиперссылками.следует добавить атрибут href, как было предложено. В качестве значения вы можете ввести #, если нет резервных функций, не поддерживающих JavaScript. В противном случае вы должны ввести URI ресурса, на который вы хотите сослаться.

См. Также Википедию: http://en.wikipedia.org/wiki/HTML_element#Anchor

1 голос
/ 18 февраля 2011

Это не ссылка. Ссылки имеют href атрибуты. Это просто якорь, который запускает JavaScript при нажатии.

...