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: 10 let
|
0