| Autor | Zpráva | ||
|---|---|---|---|
| Kukinac Profil * |
#1 · Zasláno: 8. 4. 2013, 10:00:48
ahoj,
potřebuji poradit jak nastavit/napsat v menu, aby po kliknutí na nějakou sekci zůstala označená? (může být stejným obrázkem jako pro hover) ul.menu {
color: black;
background: white;
font-family: sans-serif;
}
ul.menu {
width: 880px;
margin: 0 auto; /* kdo nechce centrovane menu, vynecha */
padding: 0;
background: #FFE682;
}
ul.menu li {
float: left;
list-style: none;
height: 30px;
line-height: 30px; /* vertikalni centrovani, stejne height a line-height */
}
ul.menu a {
display: block;
width: 125px;
height: 100%;
background: url(menu1.png) no-repeat left #bbc;
text-align: center;
font-size: 1.15em;
font-family: Times New Roman;
text-decoration: none;
color: #000;
}
ul.menu a:hover, ul a:active, ul a:focus {
background: url(menu1.png) no-repeat right #eed;
color: #4d3e00
}
.cistic {
clear: both;
height: 1px;
overflow: hidden;
margin-top: -1px;
} |
||
| Trejpa Profil |
#2 · Zasláno: 8. 4. 2013, 10:15:43
Kukinac:
V každé HTML stránce musíš aktivní položku menu nějak odlišit, třeba třídou. <ul class=menu> <li><a href=1.html>První</a> <li class=aktivni><a href=2.html>Druhá</a> <li><a href=3.html>Třetí</a> </ul> Potom ji bude jednoduché ve stylech zaměřit a ostylovat. .menu .aktivni a { background-position: right; }
.menu .aktivni a:hover { /* něco jiného */ }V kaskádových stylech nic jako „aby po kliknutí na nějakou sekci zůstala označená“ není. Dalo by se to trochu krkolomně nasimulovat JavaScriptem, který by porovnával aktuální adresu stránky s napsaným seznamem stránek a podle něho by konkrétní položce menu přidal třídu pro jiný vzhled. Ale tak to z dobrých důvodů nikdo nedělá. |
||
|
Časová prodleva: 3 dny
|
|||
| Kukinac Profil * |
#3 · Zasláno: 11. 4. 2013, 09:46:31
Trejpa díky, na "hlavním" menu mi to pěkně funguje. Ale na této stránce (levé boční menu) www.rancmp.wz.cz/bridlicna2011.html mi to nějak nejde, kde mám chybu?
Tohle mám v css pro to boční menu: ul.menu-fotogalerie li {
display: inline-block; }
ul.menu-fotogalerie a {
width: 150px;
height: 30px;
background: url(button.png) 0 0 no-repeat;
display: block;
text-align: center;
text-decoration: none;
color: #333;
line-height: 2;
font-weight: bold;
font-size: 90%; }
ul.menu-fotogalerie a:hover {
background: url(button.png) 0 -30px no-repeat;
}
ul.menu-fotogalerie .aktivni a { background-position: down; }V kaskádových stylech nic jako „aby po kliknutí na nějakou sekci zůstala označená“ není. Dalo by se to trochu krkolomně nasimulovat JavaScriptem, který by porovnával aktuální adresu stránky s napsaným seznamem stránek a podle něho by konkrétní položce menu přidal třídu pro jiný vzhled. Ale tak to z dobrých důvodů nikdo nedělá. Jasně, já to chtěl jen popsat :) |
||
| Trejpa Profil |
#4 · Zasláno: 11. 4. 2013, 11:56:47
Kukinac:
„kde mám chybu?“ 1. Třeba na stránce Naše kravičky nemáš v seznamu odkazů položky seznamu. Seznam musí obsahovat položky seznamu <li>, teprve v nich může být odkaz nebo obsah. 2. Nemáš tu položku nijak označenu. Použij třídu u aktivní položky, ostatní položky seznamu nechej bez třídy. 3. Na stránce Břidličná máš jen jednu položku, má sice správně nastavenu třídu aktivni, ale jednak je u špatného odkazu a ve stylech pro ni nic nastaveno stejně není. Třeba takto, pokud chceš měnit ten odkaz v položce (až si je všude doplníš) ul.menu-fotogalerie .aktivni a { background-position: 0 -30px; }
|
||
| Kukinac Profil * |
#5 · Zasláno: 11. 4. 2013, 16:21:28 · Upravil/a: Kukinac
Trejpa:
> 1. Třeba na stránce Naše kravičky nemáš v seznamu odkazů položky seznamu. Seznam musí obsahovat položky seznamu <li>, teprve v nich může být odkaz nebo obsah. > 2. Nemáš tu položku nijak označenu. Použij třídu u aktivní položky, ostatní položky seznamu nechej bez třídy. Tohle já vím...Píšu to v PSPadu a když jsem tam napsal <li> tam mi to tam hodilo tečku před ten odkaz (jako ve Wordu "odrážky") a tak jsem to zase smazal...zjistil jsem, že se to ale v prohlížeči zobrazuje správně, stejně to ale nefunguje. „3. Na stránce Břidličná máš jen jednu položku, má sice správně nastavenu třídu aktivni, ale jednak je u špatného odkazu a ve stylech pro ni nic nastaveno stejně není. Třeba takto, pokud chceš měnit ten odkaz v položce (až si je všude doplníš) ul.menu-fotogalerie .aktivni a { background-position: 0 -30px; }“ Taky vím, že je u špatného odkazu...jenže to tam bylo jen abych si všiml až to bude fungovat..jestli mi rozumíš...zatím jsem neřešil, kde to bude, dokud tu nepojede jak má. Teď už je to správně...<li> tam je třída je také u správného odkazu...ale "od tebe" jsem tam dopsal jen 0 -30px ....Stejně to ale nefunguje...Jéééééj :DDDD tak už mi to funguje :D našel jsem chybu: Odkazoval jsem na špatný styl.css ...taká blbá chyba ;) ale i tak díky :)) |
||
| margin Profil * |
#6 · Zasláno: 11. 4. 2013, 16:53:04
Kukinac:
„když jsem tam napsal <li> tam mi to tam hodilo tečku před ten odkaz (jako ve Wordu "odrážky")“ To je normální, LI jje položka seznamu a před ní se zobrazí odrážka. Změny vzhledu se nedělají zprasením HTML, ale pomocí CSS, více List-style, odrážek se jde zbavit deklarací: list-style: none; případně ukecanější deklarací list-style-type: none;
|
||
|
Časová prodleva: 13 let
|
|||
0