Кто-нибудь может объяснить, почему внутри тага ><P> не может быть тага <UL>?
То есть конструкция вида:
<P> Text <UL> <LI>Item</LI> </UL> </P>
Будет отображаться именно так:
Text
- Item
А не так:
Text
- Item
По мне так очень нелогично. А ведь говорят, что это спецификацией не предусмотрено.
display: inline не поможет?
Да не в этом дело. Как так сделать-то всегда придумается. Непонятно, почему нельзя в контейнер типа Параграф поместить Список. Это ж нормально, предположим я пишу: «Пойду в магазин, куплю там: молока, кефира, булочек, сметаны. То-то жинка будет довольна»! Горизонтальный список тоже список, мог бы быть вертикальным.
То есть с точки зрения организации контента нелогичное правило, как мне кажется.
Ну так для этого и придумано, наверное, inline.
По умолчанию ul — это блочный элемент. А если хочется, можно его прямо внутрь параграфа поместить.
fg dsafg sdfg sdfg sdfg ads fas dfasdf asdf
sdf sadf asdrf as
sdfsdfsdf sdf sdf sdf
sdfsdfsdf sdf sdf sdf
sdfsdfsdf sdf sdf sdf
dfsg sdfg sdfg d
А я тоже хочу попробовать,
получится
ли
Вот странная какая-то штука.
Хорошо, что я не верстальщик, все же.
Причём тут даже дело не в браузере. Правильная Опера тоже показывает «не так». Я вот и не пойму, где подвох.
<P style=»PADDING: 10px; BACKGROUND-COLOR: #eee»>
fg dsafg sdfg sdfg sdfg ads fas dfasdf asdf sdf sadf asdrf as
<UL style=»DISPLAY: inline»>
<LI>sdfsdfsdf sdf sdf sdf</LI>
<LI>sdfsdfsdf sdf sdf sdf</LI>
<LI>sdfsdfsdf sdf sdf sdf</LI>
</UL>
dfsg sdfg sdfg d
</P>
display: inline не поможет?
Да не в этом дело. Как так сделать-то всегда придумается. Непонятно, почему нельзя в контейнер типа Параграф поместить Список. Это ж нормально, предположим я пишу: «Пойду в магазин, куплю там: молока, кефира, булочек, сметаны. То-то жинка будет довольна»! Горизонтальный список тоже список, мог бы быть вертикальным.
То есть с точки зрения организации контента нелогичное правило, как мне кажется.
Ну так для этого и придумано, наверное, inline.
По умолчанию ul — это блочный элемент. А если хочется, можно его прямо внутрь параграфа поместить.
fg dsafg sdfg sdfg sdfg ads fas dfasdf asdf
sdf sadf asdrf as
dfsg sdfg sdfg d
А я тоже хочу попробовать,
Вот странная какая-то штука.
Хорошо, что я не верстальщик, все же.
Причём тут даже дело не в браузере. Правильная Опера тоже показывает «не так». Я вот и не пойму, где подвох.
<P style=»PADDING: 10px; BACKGROUND-COLOR: #eee»>
fg dsafg sdfg sdfg sdfg ads fas dfasdf asdf
sdf sadf asdrf as
<UL style=»DISPLAY: inline»>
<LI>sdfsdfsdf sdf sdf sdf</LI>
<LI>sdfsdfsdf sdf sdf sdf</LI>
<LI>sdfsdfsdf sdf sdf sdf</LI>
</UL>
dfsg sdfg sdfg d
</P>
по стандарту открытие <UL> автоматически закрывает <P>. увы
Да я вижу. :) Нелогично, говорю. Тебе не кажется?
параграф в html понимается просто как контейнер для текста, так что это достаточно логично. то, что это не очень удобно — это уже другой разговор.
:)
Слушай, а где ты такое правило нашёл?
Я так думаю параграф на любом блочном элементе заканчивается….
Re: :)
из чего автоматически следует…
Re: :)
ага. я думал может у тебя спецификация другая :).
по стандарту открытие <UL> автоматически закрывает <P>. увы
Да я вижу. :) Нелогично, говорю. Тебе не кажется?
параграф в html понимается просто как контейнер для текста, так что это достаточно логично. то, что это не очень удобно — это уже другой разговор.
:)
Слушай, а где ты такое правило нашёл?
Я так думаю параграф на любом блочном элементе заканчивается….
Re: :)
из чего автоматически следует…
Re: :)
ага. я думал может у тебя спецификация другая :).
:)
Семантически тэг p больше похож на br. Т. е. совсем если грубо говоря, он просто на следующую строку перекидывает.
По спецификации закрывающий тэг для элемента p необязателен. Т. е. браузер просто сам решает когда этот p закончился. А заканчивается он, скорее всего, на первом встретившемся блочном элементе, которым и является ul.
Когда ты говоришь, что поведение нелогично — ты просто ждёшь от тэга p поведения div’а. А у него другая семантика. Ну так и используй div — будет всё логично.
:)
Семантически тэг p больше похож на br. Т. е. совсем если грубо говоря, он просто на следующую строку перекидывает.
По спецификации закрывающий тэг для элемента p необязателен. Т. е. браузер просто сам решает когда этот p закончился. А заканчивается он, скорее всего, на первом встретившемся блочном элементе, которым и является ul.
Когда ты говоришь, что поведение нелогично — ты просто ждёшь от тэга p поведения div’а. А у него другая семантика. Ну так и используй div — будет всё логично.
В спецификации про это как раз-таки написано:
В спецификации про это как раз-таки написано:
Я думаю CSS надо прописать для обоих какой-то хитрый.
display: inline; кокой-нибудь, я не знаю..
Поэксперементировать надо короче.
Тут была такая идея. Нельзя. Просто нельзя в p класть ul
Я думаю CSS надо прописать для обоих какой-то хитрый.
display: inline; кокой-нибудь, я не знаю..
Поэксперементировать надо короче.
Тут была такая идея. Нельзя. Просто нельзя в p класть ul
почитал коменты..
Ну сделай
вместо
, если спецификацией запрещено. Видать проектировщикии задумывали
как самый «младший» элемент. А мы хотим в него еще потомков засунуть.
Re: почитал коменты..
Да не проблема сделать-то :) Меня нелогичность спецификации удивила просто.
Re: почитал коменты..
* ой, у меня тэги пропали, я протупил :)
Да, спецификация дурная, что поделаешь.
почитал коменты..
Ну сделай
, если спецификацией запрещено. Видать проектировщикии задумывали
как самый «младший» элемент. А мы хотим в него еще потомков засунуть.
Re: почитал коменты..
Да не проблема сделать-то :) Меня нелогичность спецификации удивила просто.
Re: почитал коменты..
* ой, у меня тэги пропали, я протупил :)
Да, спецификация дурная, что поделаешь.