Ссылка внутри <li> не работает
Довольно простой орех, который я пытаюсь взломать. Я делаю ролловеры изображений только с CSS. Когда я подключил ссылку href, она просто не работает. Я имею в виду не работать, это не действует как ссылка, и в результате вы не можете перейти на страницу. Считая, что это как-то связано с <li>
но я не могу понять, что. Вот мой HTML и CSS:
CSS
ul.navigation,
ul.navigation ul {
margin: 25px 0 0 0;
}
ul.navigation li {
list-style-type: none;
margin:15px;
}
.AboutUsNav{
display: block;
width: 159px;
height: 54px;
background: url('../images/N_About_Us.png') bottom;
text-indent: -99999px;
}
.AboutUsNav:hover {
background-position: 0 0;
}
HTML
<div>
<ul class="navigation">
<li class="AboutUsNav"><a href="/about">About Phin & Phebes Ice Cream</a></li>
<li class="FlavorsNav"><a href="/flavors">Ice Cream Flavors</a></li>
<li class="WheretoBuyNav"><a href="/buy">Where to Buy Our Ice Cream</a></li>
<li class="WholesaleNav"><a href="/wholesale">Wholesale Orders Ice Cream</a></li>
<li class="ContactUsNav"><a href="/contact">Contact Phin & Phebes Ice Cream</a></li>
<li><a href="http://phinandphebes.com/about">about</a></li>
</ul>
</div>
3 ответа
Ваш .AboutUsNav
имеет text-indent: -99999px;
тянет a
за пределами интерактивного окна просмотра.
Вы, вероятно, хотите поставить отрицательный text-indent
на a
сам, а затем установить a
элемент к display: block; width: 100%; height: 100%
в зависимости от ваших обстоятельств.
Спасибо за помощь. Я попробовал подход, который вы оба рекомендовали. Я думаю, что это определенно работает при определенных обстоятельствах. Для меня мое фоновое изображение просто не показывалось, но ссылки работали.
Я решил эту проблему, оставив CSS таким же, но изменив разметку HTML следующим образом:
<div>
<ul class="navigation">
<li><a class="AboutUsNav" href="/about">About Phin & Phebes Ice Cream</a></li>
<li><a class="FlavorsNav" href="/flavors">Phin & Phebes Flavors</a></li>
<li><a class="WheretoBuyNav" href="/buy">Where to Buy Phin & Phebes Ice Cream</a></li>
<li><a class="WholesaleNav" href="/wholesale">Wholesale Orders Ice Creamf</a></li>
<li><a class="ContactUsNav" href="/contact">Contact Phin & Phebes Ice Cream</a></li>
</ul>
Я работал над этой демонстрацией, которая не включала неупорядоченный список: http://kyleschaeffer.com/best-practices/pure-css-image-hover/
Не применяйте текстовый отступ и фон к списку - вместо этого сделайте это для ссылки.
Пример:
<div id="main_nav">
<li class="home">
<a href="/">Home</a>
</li>
<li class="news">
<a href="/">News</a>
</li>
</div>
CSS:
#main_nav a {
background-image:url();
}
#main_nav .home a {
width: 82px;
background-position: 0px 0px;
}
#main_nav .news a {
width: 85px;
background-position: 82px 0px;
}