Autor Zpráva
hroch
Profil *
zdarec,

mám takový pro mě záhadný problém. Vkládám obsah souboru s html textem do stránky. nějak takto:

<p id="box"><? echo get_content('index-infobox') ?></p>

ta funkce jenom načte obsah souboru. Všechno funguje pokud není ve vkládaném textu tag <div> nebo <p>. V tomto případě se odstavec id="box" uzavře tagem </p> hned před tímto <div> nebo <p> tagem. A já vůbec netuším proč:)

díky za rady
RockFire
Profil
Abych se přiznal tak také nevím, ale nebylo by řešením použít funkci include()?
hroch
Profil *
RockFire:
Abych se přiznal tak také nevím, ale nebylo by řešením použít funkci include()?

při include se to chová stejně, je to divné. googlím to horem dolem a nikde nic:)
Joker
Profil
hroch:
Všechno funguje pokud není ve vkládaném textu tag <div> nebo <p>. V tomto případě se odstavec id="box" uzavře tagem </p> hned před tímto <div> nebo <p> tagem. A já vůbec netuším proč:)
Tak funguje HTML. Prvek <p> nemůže obsahovat další <p> ani <div>, takže před jejich začátkem si HTML automaticky domyslí </p>.

Což je přesně důvod, proč není dobrý nápad pro "kontejnery HTML kódu" používat odstavce. Použijte <div>.
Chamurappi
Profil
Reaguji na hrocha:
Viz Jak funguje HTML.

googlím to horem dolem a nikde nic:)
Je to v Googlu první výsledek na dotaz „html odstavec se sám uzavře </p> <div> proč“.


Reaguji na Jokera:
Prvek <p> nemůže obsahovat další <p> ani <div>“ …
… a má nepovinnou ukončovací značku, …
… „takže před jejich začátkem si HTML automaticky domyslí </p>.

Neplatí to pro každou zapovězenou konstrukci.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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