第27回/新しいCommon Markdownのチェックリストのネストが効かない
第21回パッチ会でも現象確認したが、本家側に報告してなかった。
確かチェック操作がまだ効かないというのもあったはず。
関連するRedmine本家Issue:
https://www.redmine.org/issues/35742
https://www.redmine.org/issues/32424#note-85
Redmine本家へのDefectチケット起票が先?
現象:
新しいCommon Markdownのチェックリストのネストが効かない
調査:
Chrome DevToolsで要素を確認したところ、HTML上の構造は正しくネストされている。
ので、CSSでの修正のみでOKのはず。
(加藤さんの別件の修正パッチ: https://www.redmine.org/issues/37566 )
加藤さん調査:
code:css
div.wiki .task-list .task-list {
padding-left: 40px;
}
=> fix/commonmark-nest-checklist ブランチにpushしました。
タスクリストがあると、通常のリストのトップ階層の○が消える不具合を確認
別の不具合なので、別チケットで修正した方が良いかも
CommonMark の仕様っぽい。同じ ul要素の子要素になっているので、task-list クラスの影響を受けている。
github でも同じような現象があった。
task-list の input 要素にクラスがついているのであれば(確認したらついてました。 task-list-item-checklist)、クラスがついていない li 要素のみ ○をつける、といった対処はできそう
子要素の状態によってスタイルを変えるには、 :has というセレクタが必要で、safari が対応していないらしい。今後、ブラウザの対応状況が改善すれば良くなるかもしれない。
https://coliss.com/articles/build-websites/operation/css/has-pseudo-class.html
他に、数値リスト以外では、1番目の要素と2番目の要素の間に無駄なスペースが出来ていた。
(GitHubの方も同じで、さらに1番目の要素間も空いていた)
(後でキャプチャをあげます by 長瀬)
GitHub Markdown自体に色々課題があるのかも
https://qiita.com/tk0miya/items/6b81e0e4563199037018
ここから第29回
本家にパッチ投稿
Defect #38215: Fix CommonMark nested checklist indent - Redmine