tl; dr
Beberapa program yang banyak digunakan, yang menghasilkan html, hanya akan menghasilkan tag paragraf pembuka, dan tidak menutupnya, dengan asumsi bahwa browser akan menutup paragraf dengan benar.
Secara sepintas, menurut saya asumsi bahwa browser akan menutup paragraf dengan benar adalah tidak benar. Apakah interpretasi saya benar? Secara umum, pengorbanan apa yang terlibat dalam keputusan semacam ini?
Menjelajahi kode sumber moinmoin, baris kode berikut menarik perhatian saya:
# We only open those tags and let the browser auto-close them:
_auto_closing_tags = set(['p'])
( sumber )
Setelah membaca melalui sisa implementasi, saya meyakinkan diri sendiri bahwa ya, memang, ketika moinmoin menghasilkan kode html untuk salah satu halamannya, itu akan dengan benar menghasilkan tag pembuka paragraf, jika perlu, sementara pada saat yang sama sengaja menghindari salah satu tag penutup paragraf (meskipun bisa dengan sepele melakukannya).
Untuk kasus penggunaan khusus saya, yang agak tidak biasa, perilaku ini tidak benar. Saya tergoda untuk mengirim laporan bug dan / atau mengubah perilaku. Namun, sepertinya keputusan desain ini dibuat dengan bijaksana. Saya tidak cukup berpengalaman dalam seluk-beluk standar html, atau berbagai implementasi browser, untuk dapat mengetahui apakah ini perilaku yang benar secara umum, dan saya merasa bahwa naluri saya untuk memperbaiki / mengubah perilaku ini mungkin sesat.
Apakah kode ini membuat asumsi yang valid tentang implementasi browser? Apakah html yang dihasilkan valid? Secara umum, pengorbanan apa yang mungkin saya lewatkan di sini?