テクノロジー

pの中にdivを入れられないのはなぜか - Legalscapeテックブログ

1: jay-es 2026/08/04 17:14

コンテンツモデルと構文規則、歴史的経緯(<p> がもともと EMPTY 要素だったこと)

2: nguyen-oi 2026/08/04 17:37

HTML仕様の歴史的経緯とDOMパーサー挙動の解説分かりやすい mXSSまで繋がるの面白いな

3: Sampo 2026/08/04 17:58

mutation XSS 熱すぎる、できちゃうんだこんなこと

4: akahmys 2026/08/04 19:01

普通の文章で考えたら、段落の途中に「独立した文の塊」を入れるってことで、それは無いだろうと思う。

5: versatile 2026/08/04 19:23

もともとSGMLは省略構文をもっているので、閉じタグなんて要らなかった

6: fujibay1975 2026/08/04 19:30

途中で訳わからなくなった。

7: Fluss_kawa 2026/08/04 19:39

divのが後に出てきてるのでその時にはすでにpタグは段落をマークアップするものだったので入れられないのが当たり前では?話の流れにすごく違和感がある。

8: gamil 2026/08/04 20:45

なんでそんなに入れたいのかわならない

9: ssssschang 2026/08/04 21:06

「まぁ何となくやりたいことわかるっしょ。うまいこと整えといてw」とできるのがAIのいいところ

10: toshikish 2026/08/04 21:13

頼りなげな高校情報科教諭が p を br みたいに段落区切りに使って説明してて,当時は変な間違え方だなと思ったけど,あれ実は合ってたんだ。

11: ejointjp 2026/08/04 21:27

pタグにdiv入れて何したいんだろうな

12: shoh8 2026/08/04 21:53

“1993年6月のHTMLのインターネットドラフトでは、Pは内容を持たないEMPTY要素” へえ

13: AmaiSaeta 2026/08/05 02:10

タイトルから「 `p` 内に `div` (というかブロック要素)を入れられない仕様に決まったのはどういう理由か」みたいな話かと思ったら別の話だった。 | mutation XSSは初めて知った。おもしろ。

14: onk 2026/08/05 02:36

タイトルから想像していなかった mutation XSS に辿り着いてめっちゃ良かった

15: MarvinParnroid 2026/08/05 06:51

閉じタグに厳格なXHTML君さえ残っていれば…

16: kazuau 2026/08/05 07:54

今はもうブロック要素、インライン要素って言わないの? / へえ、フレージングコンテンツね

17: n2s 2026/08/05 08:15

歴史的事情によるHTMLパーサーのルールはHTML規格と異なるという話…どころか、XSSの話まで出てくるなんて思わないじゃん

18: umaemong 2026/08/05 10:32

"mutation XSS"/本題とはズレるが、改めてHTMLの仕様をみると、Pの終了タグが省略可能なのは他の(旧)ブロック要素と比べてもちょっと異質だな。

19: atsushieno 2026/08/05 11:37

昔説明した時は簡単だったんだけどなあ https://monogatari.audiopluginlab.com/posts/hatenablog/2013/09/06/053327/ / WHATWG HTMLが出てきたのでこんな回りくどい説明が必要になった(説明自体はよくできていて自分の印象は良いのだが)

20: zu2 2026/08/07 12:53

最初にHTML勉強したときは <p> は段落区切りだったし、<head>もなかったような。gopherから移行したんだよな