21. září bude sraz! Od 18.00 v restauraci Tradice v Praze u Anděla
Autor Zpráva
nepolíbená
Profil
Ahoj.
Nechápu, proč mi nefunguje focus v prvních třech položkách seznamu, které mají přiřazený odkaz na stránku, ale pouze v těch posledních dvou, které jsou vlastně ještě nefunkční.
Mám na stránce i jiné odkazy, proto tyhle specifikuju třídou seznamu "levy".
Prostě chci, aby ta položka seznamu (odkaz), na které se zrovna nacházím, byla označená stejně jako tím hoverem, co tam mám.
- když se přepnu třeba na stránku Kontakt, aby to bylo na tom seznamu označeno tím stylem, co tam mám.
Rozumíte mi?
A poradíte?

<div class="levy">
        <ul>
            <li><a href="index.html">Úvod</a></li>
            <li><a href="cenik.html">Ceník</a></li>
            <li><a href="kontakt.html">Kontakt</a></li>
            <li><a href="#">prázdný odkaz</a></li>
            <li><a href="#">prázdný odkaz</a></li>
        </ul>
        
.levy a:focus{
    background: #20b2aa;
    color:#e0ffff;
    border-radius: 5px;
}
.levy a:hover{
    background: #20b2aa;
    color:#e0ffff;
    border-radius: 5px;
}
        
Trejpa
Profil
nepolíbená:
když se přepnu třeba na stránku Kontakt, aby to bylo na tom seznamu označeno
To ale CSS neumí. Aktivní položku musíš v HTML kódu nějak odlišit, třeba třídou:
<li class=aktivni><a href="index.html">Úvod</a></li>
.levy .aktivni a { /* ... */ }

Jsi si jistá, že chápeš význam pseudotřídy :focus? Použije se ve chvíli, kdy je nějaký objekt vybrán, ve smyslu připraven k užití. V případě odkazů to znamená, že je na něj odskákáno tabulátorem (výchozí styl bývá tečkovaný outline). Dá se použít i u formulářových políček, třeba zvýraznit zrovna upravovaný <input>.
nepolíbená
Profil
Trejpa:
No, asi moc nechápu, jak vidíš.
Třeba když zkusím, to co mi říkáš ty, tak to funguje, ale jen pokud tu třídu dám jen první položce.
Když přidám té druhé třídu "aktivni2", a na jednu kliknu, mám označené obě. Asi to nechápu vůbec.


Vážně jsem to s tím focusem asi pochopila špatně, myslela jsem, že umí i toto.
Ale stejně teď nechápu, proč mám označená obě políčka (Úvod i Ceník), když mám otevřenou jen jednu z těch stránek. Co dělám ještě špatně?
Trejpa
Profil
nepolíbená:
le jen pokud tu třídu dám jen první položce.
Ano, tak to má být. A na každé stránce to bude jiná, jediná, položka z menu. Žádná třída aktivni2 není potřeba.

Na stránce index.html bude menu takové:
<ul>
    <li class=aktivni><a href="index.html">Úvod</a></li>
    <li><a href="cenik.html">Ceník</a></li>
    <li><a href="kontakt.html">Kontakt</a></li>
    <li><a href="#">prázdný odkaz</a></li>
    <li><a href="#">prázdný odkaz</a></li>
</ul>

Na stránce cenik.html:
<ul>
    <li><a href="index.html">Úvod</a></li>
    <li class=aktivni><a href="cenik.html">Ceník</a></li>
    <li><a href="kontakt.html">Kontakt</a></li>
    <li><a href="#">prázdný odkaz</a></li>
    <li><a href="#">prázdný odkaz</a></li>
</ul>

Další stránky obdobně.
nepolíbená
Profil
No, páni. To je tak strašně jednoduché. Jen na to přijít...
Což by mi bez tebe trvalo asi sto let, a kdoví jestli...
Děkuji ti mnohokrát.
Jsi poklad.
Dobrou noc :)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0