flutter_html icon indicating copy to clipboard operation
flutter_html copied to clipboard

#1306 causes a regression in nested list alignment

Open Sub6Resources opened this issue 9 months ago • 1 comments

          This PR causes a regression in nested list alignment in the following HTML snippet.
<div> <ol> <li> <ul> <li>to read</li> </ul> <div> <div> <div> <div> ミルトンの <ruby>作 <rt>さく</rt> </ruby> <ruby>品 <rt>ひん</rt> </ruby>を <span>読んだ</span>ことがありますか。 </div> <div>Have you ever read Milton's works? <span>[1]</span></div> </div> </div> </div> </li> <li> <ul> <li>to recite (e.g. a sutra)</li> <li>to chant</li> </ul> </li> <li> <ul> <li>to predict</li> <li>to guess</li> <li>to forecast</li> <li>to read (someone's thoughts)</li> <li>to see (e.g. into someone's heart)</li> <li>to divine</li> </ul> <div> <div> <div> <div> <ruby>彼 <rt>かの</rt> </ruby> <ruby>女 <rt>じょ</rt> </ruby>の <ruby>心 <rt>こころ</rt> </ruby>の <ruby>動 <rt>うご</rt> </ruby>きを <span>読む</span>ことさえできなかった。 </div> <div> I could not even make a guess at the working of her mind. <span>[2]</span> </div> </div> </div> </div> </li> <li> <ul> <li>to pronounce</li> <li>to read (e.g. a kanji)</li> </ul> </li> <li> <ul> <li>to decipher</li> <li>to read (a meter, graph, music, etc.)</li> <li>to tell (the time)</li> </ul> <div> <div> <div> <div> <ruby>私 <rt>わたし</rt> </ruby>の <ruby>頭 <rt>あたま</rt> </ruby>は <ruby>楽 <rt>がく</rt> </ruby> <ruby>譜 <rt>ふ</rt> </ruby>を <span>読む</span>ようにはよく <ruby>慣 <rt>な</rt> </ruby>らされて <ruby>居 <rt>お</rt> </ruby>りますが、どうも <ruby>暗 <rt>あん</rt> </ruby> <ruby>号 <rt>ごう</rt> </ruby>を <span>読む</span>には <ruby>適 <rt>てき</rt> </ruby>しません。 </div> <div> My mind is quite accustomed to reading music, but deciphering secret codes is not its forte. <span>[3]</span> </div> </div> </div> </div> </li> <li> <ul> <li>to count</li> <li>to estimate</li> </ul> <div> <div> <div>Note</div> <div>now mostly used in idioms</div> </div> <div> <div> <div> <span>See:</span> <a> <span >さばを <ruby>読 <rt>よ</rt> </ruby>む </span> </a> </div> <div> to manipulate figures to one's advantage; to count wrongly on purpose; to inflate or deflate one's age </div> </div> </div> </div> </li> <li> <ul> <li>to read (a kanji) with its native Japanese reading</li> </ul> <div> <div> <div>Note</div> <div>also written as 訓む</div> </div> </div> </li> </ol> </div>

3.0.0-beta.2 (Expected)

2024-07-02T02:21:59,066791377+08:00

Result on this PR

2024-07-02T02:21:07,335303148+08:00

Originally posted by @shovel-kun in https://github.com/Sub6Resources/flutter_html/issues/1306#issuecomment-2200763005

Sub6Resources avatar Mar 11 '25 00:03 Sub6Resources

Added a rough fix in #1468 that gets us roughly back to the 3.0.0-beta.2 behavior. The core issue is unfortunately quite nuanced, so a better fix may take quite a bit of work. Unfortunately probably not a high priority issue (especially since the official CSS spec doesn't actually specify exactly how the markers on list items with block children should be placed)

Sub6Resources avatar Mar 11 '25 22:03 Sub6Resources