Ошибка в Chrome или плохой CSS?(якорь со скрытой видимостью) - PullRequest
3 голосов
/ 25 сентября 2011

Проверьте эту простую строку в любом HTML:

<a href="anything"><span style="visibility:hidden;">insible text here</span></a>

(вы можете проверить это прямо здесь: http://jsfiddle.net/wqS3E/)

В Firefox и IE вы можете нажать нассылка (более того, вы можете увидеть оформление подчеркивания по умолчанию).
Но в Chrome (v 13.0.782.220) невозможно щелкнуть / увидеть ссылку.

Это ошибка в Chrome или мой CSS неверен?

У меня есть элемент <li> с фоновым изображением, и некоторые <li> являются ссылками, и я хочу иметь возможность щелкать по этим ссылкам, но я не хочу, чтобы они были видны, потому что я хочу показатьфоновое изображение в <li> (и я не хочу тормозить разметку HTML), так что вот что у меня есть:

<ul>
    <li>
       <a href="link"><span class="invisible">some text</span></a>
    </li>
    ...
</ul>

.invisible {
   visibility:hidden;
}

Ответы [ 3 ]

1 голос
/ 25 сентября 2011

Я не уверен, что есть стандартное поведение для невидимых вещей внутри <a>.

Однако я заметил, что установка display на block или inline-block делает ссылку доступной в Chrome. Не уверен насчет других браузеров, но если они уже отображают его, это не должно сломать его.

0 голосов
/ 25 сентября 2011

По логике ссылка должна быть кликабельной. Установка visibility:invisible должна сделать именно это, сделать ее невидимой, но в остальном не повлиять на функцию.

В качестве аналогии, если поведение Chrome было правильным, то активный камуфляж должен сделать вас неуязвимым в Halo.

В целом, мне кажется, что это ошибка в Chrome. Тем более что Firefox согласен с IE - это случается не часто!

0 голосов
/ 25 сентября 2011

Как насчет размещения <span> вокруг <a> вместо других?

<span class="invisible"><a href="link">some text</a></span>
...