Autor Zpráva
verikanova
Profil
Dobrý den,

omlouvám se asi za hloupý dotaz, ale jak nadpis úrovně h1 dostanu na střed? Obecným <p style="text-align: center;" > to nejde. Celkovým vycentrováním stránky, nebo jak? Děkuji
Miloš
Profil
Když už, tak <h1 style="text-align: center;"> (centruješ <h1> a ne odstavec <p>).
Pokud ani to nepůjde, dej odkaz na živou ukázku.
ludekbrno
Profil *
verikanova:
Nadpis h1 (nejspíš ani nižší úrovně) by neměl být v odstavci. Před nadpisem by se měl vždycky ukončit odstavec </p>. Takže jak píše Miloš, centrovat jen tu h1 a až potom může začínat další odstavec <p>
peta
Profil
Prosim pridej problemovy kod stranky.

Bloky
H1 je blokovy element. Je to nadpis, ktery se do P obvykle nedava a neni tudiz jiste, jak se k takove kombinaci (<p><h1>aaa</h1></p>) postavi ruzne prohlizece.

Vystredit chces co?
Text? text-align: center;, viz Miloš
Cely blok, protoze mas pod tim pozadi? Pak tam musi byt zadana sirka pro H1 a mozna margin:0 auto;. Automaticka sirka blokovych prvku ja 100%, pres celou stranku, tudiz pak neni uprostred.

A jeste muzes mit chybne html kod, proto ti to treba nereaguje. Nebo si prebijis css jinym prvkem. Nejlepe hned do otazky pridat odkaz na stranku s celym problemovym kodem.
jenikkozak
Profil
ludekbrno:
Nadpis h1 (nejspíš ani nižší úrovně) by neměl být v odstavci.
Nejen že by neměl, ono to ani nejde. Odstavec má nepovinnou ukončovací značku, kterou má prohlížeč (nejen) před nadpisem povinnost si domyslet. (To je mimochodem věc, která se někde i chybně učí na školách, kde se konstrukce <p><hx>y</hx></p> používá k větší mezeře nad nadpisem.)

peta:
neni tudiz jiste, jak se k takove kombinaci (<p><h1>aaa</h1></p>) postavi ruzne prohlizece.
Můžeš uvést příklad prohlížeče, který by nezvládal doplňovat nepovinné značky?
Amunak
Profil
peta:
Myslím že se k tomu postaví všechny prohlížeče stejně. Odstavec ukončí před nadpisem a pak vynechají koncovou (nebo doplní počáteční) značku odstavce, který nikde nezačíná. Na stylování nadpisu to ale nebude mít vliv.
jenikkozak
Profil
Amunak:
(nebo doplní počáteční) značku odstavce, který nikde nezačíná.
Nedoplní, odstavec má nepovinnou jen koncovou značku. Prohlížeč by neměl šanci zjistit, kde autor začátek zamýšlel.
Amunak
Profil
jenikkozak:
Vím, ale napadlo mě to ověřit, a chrome mi v DOMu vytvořilo
<p></p><h1>aaa</h1><p></p>

Nedokážu si ale vysvětlit proč to udělal.
jenikkozak
Profil
Amunak:
To je fakt, ale takto to funguje všude (pokud vím). Odstavec tam nevzniká. Je fakt, že počáteční značka se tam domýšlí, takže z tohoto úhlu pohledu máš pravdu.
margin
Profil *
jenikkozak:
To je fakt, ale takto to funguje všude (pokud vím).
V bežných prohlížečích to tak fungují, exotické s vlastními jádry a aspoň trochu zvládající CSS, jako Amaya, Dillo, NetSurf jsem netestoval.

Odstavce jsou v DOM a jdou hezky zviditelnit stylem:
<style>
p {height: 10px; background: red;}
</style>

<p><h1>test</h1></p>
živá ukázka: http://fiddle.jshell.net/xyXbx/show/
jenikkozak
Profil
margin:
Spíš to bylo myšleno takhle:
<p>
<!--Zde vzniká první odstavec-->
    Text prvního odstavce
<!--A tady první končí-->
<h1>
    test
</h1>
<!--Zde druhý odstavec nevzniká-->

    Text druhého odstavce <!--Tento text ale odstavcem není a není ani součástí prvního odstavce-->
</p><!--Druhý „odstavec“ vzniká až tady, ale neobsahuje text, takže odstavcem není, stejně jako třeba věta beze slov není větou-->
peta
Profil
Amunak: "Nedokážu si ale vysvětlit proč to udělal." Slozite. Zustan u toho, ze proste H1 do P nedavej.
Ty pravidla vetsinou vychazi ze schopnosti jadra a prohlizec si tudiz musi kod prizpusobit, aby jej zvladl zobrazit. Tvurci netestuji vsechny divoke kombinace ani se neridi 100% pravidly w3c. <p><h1>test</h1></p> povazuji za divokou kombinaci a nespolehal bych na jeji spravne zobrazeni, ikdyz se zobrazi treba vsude shodne. To je cele.

jenikkozak: "chybně učí na školách" Pro jednu skolu pracuji. Ani mi to nepripominej. To uci lide, kteri maji zaklady html a nemaji prozkousene ruzne kombinace v ruznych prohlizecich a nechodi za nimi oprav mi to, je to spatne. Ta kombinace je moc krasna, mozna i funkcni, ale kvuli mezere mame css. To by ten ucitel mel ucit.
Petr ZZZ
Profil
Reaguji na jenikakozaka:
</p><!--Druhý „odstavec“ vzniká až tady,
Tomu nerozumím – ukončovací značkou vzniká odstavec?
margin
Profil *
Petr ZZZ:
Tomu nerozumím – ukončovací značkou vzniká odstavec?
Když jsem se to poprvé dozvěděl, taky jsem se hodně divil.
Koukni na DOM, nebo na mnou výše odkázanou živou ukázku, odstavci jsem dal 10px výšku a červené pozadí: http://fiddle.jshell.net/xyXbx/show/
jenikkozak
Profil
Petr ZZZ:
Tomu nerozumím – ukončovací značkou vzniká odstavec?
Vzniká prvek, který neobsahuje žádný text (proto ty uvozovky), ale který se dá ostylovat, se kterým se dá pracovat a dá se do něj i text přidat.
Petr ZZZ
Profil
jenikkozak, margin:
Díky, koukám na marginovu ukázku a nevycházím z údivu – za </p> je červený odstavec! Je za tím nějaké obecné pravidlo? Třeba že koncem elementu začíná ten samý element ještě jednou, pokud nezačíná něco jiného, co se s tím neslučuje? Nebo že je-li uzavírací značka navíc, mění se na otevírací? Nebo že je-li uzavírací značka navíc, doplní se k ní otevírací?
jenikkozak
Profil
Petr ZZZ:
Je za tím nějaké obecné pravidlo?
Žádný z uvedených návrhů jsi nevznesl dostatečně vysoko, takže ho autoři prohlížečů do svých děl nezapracovali. Jde o výjimku z pravidla, že nadbytečná koncová značka se ignoruje.
Petr ZZZ
Profil
Tak to je potom omyl, chyba v kódu parseru? Ale jaký je to omyl, když to tak funguje – jestli správně chápu [#9] a [#10] – napříč (přinejmenším běžnými) prohlížeči? Nebo původní autor prapůvodního praparseru napsal schválně nesmysl, aby si v budoucnu mohl kontrolovat, kdo mu jeho kód okopíruje?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0