| Autor | Zpráva | ||
|---|---|---|---|
| jmk2 Profil * |
#1 · Zasláno: 4. 8. 2014, 14:43:24
Zdravím,
vůbec mi nedává logiku práce s okraji (marginem) a jeho slučování okrájů (hroucení) a už vůbec ne, když se k tomu přidají plovoucí alementy. Budu rád když mi s tím někdo nějak rozumně a smysluplně pomůže. Momentálně mám následující situaci: HTML: <div id="obsah"> <div id="logo"> <h2>Název webu</h2> </div> <ul id="mainNav"> <li class="aktivni"><a href="">Domů</a></li> <li><a href="">Menu</a></li> <li><a href="">Menu</a></li> <li><a href="">Menu</a></li> <li><a href="">Menu</a></li> </ul> <div id="big-title"> </div> </div> CSS: div#obsah {
width: 960px;
margin: 0 auto 0 auto;
overflow: hidden; /* Nevím proč ale funguje to alespoň trochu. Před tím, než jsem to přidal, tak jsem marginem nemohl odsadit div big-title. Teď to jde, ale margin se počítá od okraje stránky - případně divu id=obsah, ne od loga, jak bych nejépe potřeboval a jak by to asi mělo být */
}
/* Logo */
div#logo h2 {
color: #fff;
display: none;
}
div#logo {
background: url("images/logo.png") no-repeat;
width: 266px;
height: 47px;
margin-top: 27px;
float: left;
}
/* Navigace */
ul#mainNav {
list-style-type: none;
padding-left: 0;
margin: 30px 0 0 0;
float: right;
}
ul#mainNav li {
float: left;
padding: 0 8px 0 8px;
margin: 0 0 0 25px;
}
ul#mainNav a {
display: block;
color: #fbfbf3;
text-decoration: none;
}
ul#mainNav a:hover {
color: #c2151c;
text-shadow:0 0 1px #c2151c, 0 0 1px #c2151c, 0 0 1px #c2151c; /* For bold hover effect, because shifting on bold hover*/
}
ul#mainNav li.aktivni {
color: #c2151c;
font-weight: bold;
background: url("images/podtrzeni-akt-link.png") no-repeat bottom center;
padding-bottom: 7px;
}
ul#mainNav li.aktivni a {
color: #c2151c;
}
/* Titulek */
div#big-title {
width: 960px;
height: 180px;
background: url("images/background-big-title.png") no-repeat top left;
clear: both;
margin-top: 50px;
} |
||
| mimochodec Profil |
#2 · Zasláno: 4. 8. 2014, 14:52:31
jmk2:
Nevidím otázku. Krom toho: zkopíruj to do http://kod.djpw.cz , ať se s tím dá pracovat. |
||
| juriad Profil |
Ty věci, co mají být vedle sebe, dej ještě do jednoho divu a tomu dej overflow - to zajistí ukončení plavání. A od tohoto divu můžeš odpíchnout ten titulek marginem.
Asi chceš toto (po výrazném zkulturnění, změnách barev a vyházení zbytečností): http://kod.djpw.cz/pveb Otázka by nejspíš byla: „Proč mezi titulkem a logem není mezera 50px?“ |
||
| jmk2 Profil * |
#4 · Zasláno: 4. 8. 2014, 19:26:40
juriad: Obalit to do divu je asi taky možnost a funguje. Chtěl jsem ušetřit jeden zbytečný div. Každopádně to bude asi zbytečné a díky za radu.
Ale i tak nechápu proč. Asi holt prohlížeč bere jako kdyby tam ty plovoucí elementy nebyly a nepočítá margin od nich. Proč ale overflow? Ten přece řeší obsah v elementu a jeho přetečení, jaký vliv to má tady? |
||
| Bubák Profil |
#5 · Zasláno: 4. 8. 2014, 19:33:30
jmk2:
„Proč ale overflow?“ Přiznám se, že nevím, zda to má oporu v CSS specifikaci, ale overflow se dá použít napříč prohlížeči pro ukončení obtékání. http://jecas.cz/float, část clearování. |
||
| jmk2 Profil * |
#6 · Zasláno: 4. 8. 2014, 19:42:57
Jo tak, takže oni z toho elementu jakoby vyplavou. Otázka je, když to není standardní chování, jestli se nemůže stát, že by to prohlížeče přestaly podporovat )Kvůli standardům css) a nebylo by lepší to raději řešit jinak?
|
||
| juriad Profil |
#7 · Zasláno: 5. 8. 2014, 01:44:20
jmk2:
Žádný prohlížeč si kvůli hloupé specifikaci nedovolí rozbít zobrazení milionů webů. Specifikace je navíc často vytvářená zpětně - popisuje něco, co již většina prohlížečů podporuje a je to zaběhnutou praxí. |
||
|
Časová prodleva: 12 let
|
|||
0