odkaz

Následující konstrukce je nevalidní, protože obsahuje blokový element uprostřed řádkového:

<a href="index.html"><div class="logo"></div></a>

Jak ji nahradit, potřebuji-li na logu odkaz na úvodní stranu a to logo chci udělat pomocí stylů. Tedy nikoliv:

<div><a href="index.html"><img src="logo.png" /></a></div>
no dalo yb se to nahradit spanem, aby to bylo validni n? to je inline element

myslim, že by bylo opravdu v tomto pripade lepsi pozit ten obrazek, protoze pak i kdyz to pude, tak odkaz na prazdnej div/span nebude fungovat a musel ybs do nej neco napsat, coz yb se zobrazilo pres css pozadi... a reseni mezerama neni moc elegantni myslim
Souhlasím, ale bohužel to nelze nahradit odkazem na obrázku. Jde o to že chci, aby se mi nadpis stránek (ten obrázek) měnil podle použitého CSS souboru. Když ho tam dám tagem <img>, bude tam natvrdo. Použil jsem toto:

#logo {
width: 100%;
}
#home {
display: block;
width: 100%; height: 100px;
background: url('img/logo.png') top center no-repeat;
}

<div id="logo">
<a href="index.html"><span id="home"></span></a>
</div>

Nebo je ještě jiný způsob jak udělat více-vzhledovou stránku?
proc nenastylujes rovnou ten odkaz? dat mu display:block, velikost, obrazek na pozadi. samozrejme by ten odkaz mel nejaky id
No jasně dyť <a> je stejně jako <span> inline prvek a nebude v tom rozdíl. Dobrý nápad. Akorát koukám, že IE při přejezdu kurzoru přes ten odkaz bliká. No prostě je to IE s tim nic asi nenadělám.
Hele teď to validuju celý (http://kolbdance.cz/) a nerozumím jedné věci:

Do formuláře se mi přidává automaticky pole:

<input type="hidden" name="PHPSESSID" value="32cd43...atd" />

a hlásí mi to chybu na posledním lomítku. A u dalších inputů taky. Přitom je to úplně normální formulář:

<form method="post" action="http://kolbdance.cz/script/S_login.php?">
jméno:<input type="text" name="login" size="10" />
heslo:<input type="password" name="passwd" size="10" />
<input type="submit" name="enter" value="O.K." />
</form>
no chyby v lomitkach to hlasi, protoze myslim, ze mas Doctype napsany pro HTML a uzavirani neparovejch tagu lomitkem se pouziva v XHTML, takze bud je odstran , nebo zmen Doctype
Ale vždyť tam je XHTML 1.0 Strict a i validátor to tak automaticky detekuje.
stip:
ty inputy ještě obal fieldsetem (anebo divem)
Ale já tam fieldset nechci, on je tam povinný? Jinak celý formulář je v divu.
fieldset by tam mel byt. klidne ho nastyluj jako neviditelnej...
No jo máš jako dycky pravdu. S fieldsetem už se to tváří validně. Jenom mě tam stále zlobí to přidávání:

<input type="hidden" name="PHPSESSID" value="32cd43...atd" />

ono se totiž přidá hned za <form> tedy ještě před ten fieldset. To tam přidává prohlížeč, PHP, nebo kdo vlastně? Já session používám, ale až pro přihlášení. Nechápu proč se mi tam přidává to hidden pole i když žádná session neběží.