Показать полную графическую версию : [решено] Сделать див ссылкой.
Artem-Samsung
28-03-2008, 20:14
http://uaclub.org/admin/index3.php
Сделал вот таким вот макаром:
<a href="#"><div class="menu2">Підрозділи</div></a>
Проблемма в том, что в IE не работает и Валидатор ругается:
Line 158, Column 34: document type does not allow element "div" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag.
<a href="#"><div class="menu2">Додати категорію</div></a>
The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.
One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").
Vlad Drakula
28-03-2008, 20:24
Artem-Samsung
а зачем вам DIV внутри ссылки?
Artem-Samsung
28-03-2008, 20:26
Для того, что бы весь квадратик был ссылкой. То есть при нажатии на область ячейки выполняется действие.
Если внутри ссылку, то переход только по нажатии именно по текстовой области
да, нельзя блочные элементы вставлять в инлайн. Сделай наоборот
<html>
<head>
<style type="text/css">
div a{
display:block;
border:1px solid #000;
width:30px;
height:30px;
text-decoration:none;
}
div {
border:1px solid #030;
width:30px;
height:30px;
}
</style>
</head>
<body>
<div id="out" class="out">
<a href="" id="in">hallo</a>
</div>
</body>
</html>
Artem-Samsung
28-03-2008, 20:36
Спасибо, то что нужно :)))
Artem-Samsung
28-03-2008, 20:56
Единственное что не пойму, у меня почему то первых две ссылки не работает, а дальше все работают О.о
Ну ниче, разберусь. Еще раз спасибо
a {
display:block;
}
этого хватит
Artem-Samsung
28-03-2008, 21:28
farlow, ага, я так и сделал. вот только странно так получается.
часть работает ссылок так, а часть нет :))
#content #menu .menu2 a:hover {
width: 157px;
background-color: #003399;
color: #FFFFFF;
display: block;
}
вроде в 3 браузерах протестил без ошибок. А что именно не пашет?
<html>
<head>
<style type="text/css">
#content #menu .menu2 a {
width: 157px;
display: block;
}
#content #menu .menu2 a:hover {
background-color: #003399;
color: #ffffff;
}
</style>
</head>
<body>
<div id="content" class="">
<div id="menu" class="">
<div id="" class="menu2">
<a href="">sdfsfs</a>
<a href="">sdfsfs</a>
<a href="">sdfsfs</a>
<a href="">sdfsfs</a>
<a href="">sdfsfs</a>
<a href="">sdfsfs</a>
</div>
</div>
</div>
</body>
</html>
Artem-Samsung
28-03-2008, 21:52
Я блок и в хувере написал, да и ссылку обозначил не так точно, а так:
#menu a:link {
color: #000066;
font-weight: normal;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
text-decoration:none;
display:block;
}
Сделал все, как вы написали и получилось вроде :) Хотя тогда тоже вроде бы как получалось но после нескольких заходов что-то испортилось(
Но надеюсь, что так будет точно работать. Спасибо еще раз :))
eugeniuzzz
26-04-2008, 10:18
А никто не знает, как убрать тоненькую рамку, появляющуюся при клике на ссылку в FireFox? (не border)
a:focus{outline: none}
в целях usability не рекомендуется это делать, потому как люди привыкшие к навигации tab-ом не видят на каком элементе они находятся
eugeniuzzz
26-04-2008, 17:44
Спасибо! Как обычно, всё оказалось предельно просто. А на счёт usability надо будет помыслить...
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.