Autor Zpráva
Joan
Profil
Hezký den,
ladím si stránky i pro IE6 a docela jsem zkoprněla po zjištění, že pouze IE6 mi místo deklarovaného zúžení vnějšího DIV id="uvod" mění šířku vnitřního odstavce p class="first". Proč proboha?

Šířku DIVu s id="uvod" jsem od oka plácla na 500px, aby byl v IE6 nesoulad markantní.
Mým přáním je zúžit design v IE6 aspoň přibližně jako v IE7, IE8, FF3 ale celý obal úvodní stránky DIV id="homepage" mi na změnu šířky v IE6 vůbec nereaguje (nechápu proč), proto ta skopičina se snahou nastavit šířku prostřednímu obsahovému sloupci: když deklaraci o určení šířky homepage v podmíněném komentáři vynechám, ze stránky vznikne nepředstavidelně široká plocha, width ani min-width rozumných rozměrů mi vůbec nastavit nejde (IE6 na to nereaguje).
Ve všech rozumných prohlížečích mám nastaveno homepage {width: 950px;}, na zúžení stránky v IE6 bohužel nestačí ani width=660px (taky od oka, ve snaze zaznamenat nějakou reakci IE6)
Děkuji za pomoc, tu je ona neposlušná stránka.
Trejpa
Profil
Joan:
Máš to dost chaotické. Takhle se layout obvykle nedělá.

#kvuli-ie zřejmě odvozuje šířku od nadřazeného bloku (v quirku 950 pixelů).
Zkus #kvuli-ie nastavit jeho skutečné rozměry.
Joan
Profil
Trejpa:
Teprve začínám... Dávat menu a pravý sloupeček do paddingu event. marginu středového obsahu není dobré řešení?
Ten DIV#kvuli-ie7 jsem tam musela dát jen a pouze kvůli IE7 - bez něho se prakticky celá stránka nezobrazila, IE8 ani IE6, natož FF a Opera ho vůbec nepotřebovaly. Zkusím, cos mi poradil, díky.
Trejpa
Profil
Joan:
Dávat menu a pravý sloupeček do paddingu
Běžná praxe jsou dva/tři celé sloupcové bloky naskládané vedle sebe ohraničené jedním vystředěným. Jsou nafloatovány vedle sebe a každý má udány své rozměry. Nad nimi hlavička, pod nimi obvykle clerovací patička. Jakékoliv další prvky jsou potom uvnitř těchto bloků.

Schématicky:
<vše>         v rámci body vystředěno
 <hlavička>
 <menu>       šířka + float
 <obsah>      šířka + float
 <sloupec>    šířka + float
 <patička>    clear
</vše>

Bloky pozicované odspodu se tímto nahradit nedají. Snad jen si dát pozor, aby na nižší stránce nepřekrývaly text plynoucí shora.
Joan
Profil
Trejpa:
Díky, vím, že způsobů na rozvržení layoutu je více. Můj způsob, kdy jsem menu pevných rozměrů (protože je obrázkové) vložila do levého paddingu hlavního - již pružného - obsahu, jsem našla popsaný v knize 333 triků a tipů pro CSS od Martina Domese, takže můj vlastní výmysl to není. Po čase jsem zjistila, že budu potřebovat i úzký pravý sloupeček, tak jsem ho jednoduše šoupla pro změnu do pravého paddingu obsahu. Být všechny sloupce pružné, hned bych to nechala plavat, tedy - FLOAT :-))
Dovedeš mi ale prosím Tě vysvětlit, proč se mi měnila šířka jiného DIVu, než který jsem napsala do deklarace? Je to jako by IE6 "neuměl číst". Když budu znát odpověď na to proč, snáze se příště chybě (zatím nevím jaké) vyhnu.
Díky za Tvůj čas :-)

P.S.: Napadlo mě zkusit výrazně orámovat - natvrdo v hlavním CSS - celý obalový div prostředního obsahu s názvem #kvuli-ie7 a konstatuji, že ve FF3 i IE7 se to orámovalo, IE6 si toho ani "nevšiml" takže zakopaný pes bude někde tady a určitě to souvisí s tím, že nejsem schopna donutit IE6, aby mi změnil width toho #kvuli-ie7. Něco mu v deklaracích vadí a já nevím co...

EDIT: tam jsem na to "přišla", ale stejně koukám jako puk: když jsem totiž natvrdo hrábla do hlavního CSS a tam upravila potřebnou šířku celé homepage, vše se konečně zobrazilo, jak má. Nechápu ovšem dvě věci:
1) jak je možné, že konkrétní deklarace v podmíněném komentáři pro IE6 NEPŘEBILA tu, která je napsaná v externím stylu, když ostatní deklarace v tomto podm. kom. měnit mohu
2) pod určitou hranici zmenšovat šířka homepage už nešla: zase se začaly zmenšovat vnitřní odstavce p id="first" místo smrsknutí se celé stránky.
Jenomže tato víceméně zkušební změna nastavení zase komplet rozhodí stránky v Mozile apod., takže musím přesvědčit IE6, že musí koukat na VŠECHNY deklarace v podmíněném komentáři, ne jen na některé.
Existuje prosím vysvětlení, proč deklarace v podmíněném komentáři nepřebije deklaraci v externím stylu?
Trejpa
Profil
Joan:
Skutečnou příčinou byl zřejmě nepotřebný float: left v #uvod, který blok vytrhával z toku stránky. Postačí zrušit tento float.

Je to vskutku zajímavá stránka, která se v IE nechová podle očekávání, a to ve více ohledech. Ještě se některými anomáliemi budu zabývat. Kdyby to někoho zaujalo, tak jsem ze stránek vytáhl problémovou část.

hlavního - již pružného - obsahu
Kvůli zadané šířce jsem si tento původní účel neuvědomil.

proč se mi měnila šířka jiného DIVu, než který jsem napsala do deklarace?
Ona se měnila ta správná, ale vnořený element si z ní zřejmě odvodil svoji velikost.

(Mimochodem, CSS máš uloženo v UTF-8, zatímco stránka je ve Windows-1250, což zejména s použitím diakritiky nemusí dělat dobrotu. CSS navíc obsahuje BOM a několik řádků nezakomentovaného popisu.)
Joan
Profil
Trejpa:
Skutečnou příčinou byl zřejmě nepotřebný float: left v #uvod, který blok vytrhával z toku stránky. Postačí zrušit tento float.
Zkusila jsem ho odstranit a snad ve všech prohlížečích se to pěkně rozsypalo = tudy cesta nepovede

Raději jsem hned překopala komplet celé stránky do standardu, třeba se tam ta záhadná chyba bude hledat příjemněji, tady jsou k nakouknutí.

Mimochodem, moje představa, že IE8 je konečně rozumný prohlížeč, vzala okamžitě za své při zkouknutí této stránky. Takhle zmršenou stránku - ale pouze v IE8! - jsem už dlouho neudělala...


Zajímavé je, že v quirk módu to vypadá normálně.

A vzácná lahůdka je mrknout na moji úvodní stránku v IE6 (z multiple-ie): člověk jen kouká, jak postupně před očima mu mizí podkladový obrázek obou menu (dělané jako rollover), obrázky po jednom ubývají, ze všech položek menu a po refresh stránky nanovo. Vypadá to jako video a nemám tuchy, proč. Přitom obrázkový background v levém dolním rohu úvodní stránky nemizí. Všude jinde je to v pořádku

Prosím pěkně, jak poznám kódování CSS? A hlavně jak to změnit? Píšu v PSPadu a nechávám vše defaultní. Když CSS otevřu v poznámkovém bloku, tak mihned nabízí ANSI, ale Windows-1250 vůbec.

Tohle bych prosila "přeložit": "CSS navíc obsahuje BOM a několik řádků nezakomentovaného popisu"
Vůbec nemám představu, která bije.
Moc děkuju za popostrčení :-))
Trejpa
Profil
Joan:
Soubor janula.kr.sweb.cz/styl.css je uložen jako UTF-8.
Obsahuje BOM (identifikace UTF na začátku souboru, prostě pár znaků, které se v jiném kódování zobrazí) a text, který by měl být v komentáři („ CSS - http://www.zlatberry.cz/ [...] * Sbalit vše <#> [...]“). BOM tam vkládá zřejmě Poznámkový blok.

Soubor www.zlatberry.cz/styl.css je v pořádku.


ANSI znamená národní odvozeninu ASCII, v českých Windows tedy kódování Windows-1250.

jak poznám kódování CSS?
Třeba zadat adresu stylu do Firefoxe a při jeho zobrazení navštívit menu Zobrazení > Znaková sada. Kódování s puntíkem je to použité.

Píšu v PSPadu a nechávám vše defaultní.
Potom je to v pořádku.
Joan
Profil
Trejpa:
Děkuji, zase jsem o chloupek chytřejší :-)
Kódování je pro mě dost neprobádaná oblast, něco si o tom přečtu. Jinak vždycky kopíruji tentýž styl.css jak do pomocného webového prostoru na janula.kr, tak na vlastní stránky na zlatberry, tak mě nenapadlo, že kódování může být v obou verzích odlišné.

Vaše odpověď

Mohlo by se hodit

Nezapomeňte na odkaz na živou ukázku problému.

Prosím používejte diakritiku a interpunkci.

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

0