【HTML/CSS】ul・olを使った箇条書き左揃えのパターンをまとめてみたよ
おはようございます。タカヒデです。
HTML/CSSを勉強していて、「よし!箇条書き書くぞー」って思ったときに、
「あれ…なんか違う…」
そんな経験ありませんか?
私はあったんですよ。
「手あたり次第に色んなパターンを試して求めているものを見つける。」
そんな無駄な時間を過ごしていました。
でもそんな時間も今日でおしまい。
この記事を見れば、「ul・olを使った箇条書き左揃えのパターン」を網羅できるようにまとめておきました。
「これじゃないんだよなー…」ってパターンも含めて、全12パターンをまとめているので是非参考にしてください。
- HTML/CSSを使って箇条書きをしたい
- 箇条書きの左揃えをしたいんだけど何か求めているものと違う
それでは見ていきましょう。
①タグに「text-align:center」を指定
まずは、タグに「text-align:center」を指定するパターンです。
先にお伝えしますが、これは私の求めていなかったNGパターンです。
①-1:ulに対して「text-align:center」を指定
では、ulに対して「text-align:center」を指定してみます。
コードは以下です。
<ul class="pattern1">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern1{
text-align: center;
}実行するとこんな感じ↓

「・」は画面の左に位置しているものの、テキストは画面中央に配置されています。
いけてないですね。
①-2:liに対して「text-align:center」を指定
次に、liに対して「text-align:center」を指定してみます。
コードは以下です。
<ul class="pattern2">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern2 li{
text-align: center;
}実行するとこんな感じ↓

先ほどと同じですね。
①-3:親要素に対して「text-align:center」を指定
最期に親要素に対して「text-align:center」を指定してみます。
コードは以下です。
<div class="pattern3">
<ul>
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>
</div>.pattern3{
text-align: center;
}実行するとこんな感じ↓

うーん。どれも同じ実行結果でしたね。
②タグに「text-align:center」を指定+横幅(width)を指定
続けて、タグに「text-align:center」を指定+横幅(width)を指定するパターンを見ていきましょう。
私が求めているものではありませんでしたが、②-2のパターンは使うこともあるかと思います。
②-1:ulに対して「text-align:center」を指定+横幅(width)を指定
ulに対して「text-align:center」を指定+横幅(width)を指定してみます。
コードは以下です。
<ul class="pattern4">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern4{
width: fit-content;
text-align: center;
}実行するとこんな感じ↓

画面全体の左には寄っているものの、テキストが中央揃えになっています。
これまたいけてないですね。
②-2:liに対して「text-align:center」を指定+横幅(width)を指定
次は、liに対して「text-align:center」を指定+横幅(width)を指定してみます。
コードは以下です。
<ul class="pattern5">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern5 li{
width: fit-content;
text-align: center;
}実行するとこんな感じ↓

お、悪くないんじゃないですか?
「・」もテキストも左揃えされています。
②-3:親要素に対して「text-align:center」を指定+横幅(width)を指定
最後に、親要素に対して「text-align:center」を指定+横幅(width)を指定してみます。
コードは以下です。
<div class="pattern6">
<ul>
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>
</div>.pattern6{
width: fit-content;
text-align: center;
}実行するとこんな感じ↓

②-1と同じパターンでしたね。
③タグに「margin:auto」を指定
次は、タグに「margin:auto」を指定するパターンを見ていきましょう。
これはすべて②-2の結果と同じパターンになります。
「margin:auto」を指定しておけばすべて「・」もテキストも左揃えされるようですね。
③-1:ulに対して「margin:auto」を指定
ulに対して「margin:auto」を指定してみます。
コードは以下です。
<ul class="pattern7">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern7{
margin: auto;
}実行するとこんな感じ↓

うん。左揃えされています。
③-2:liに対して「margin:auto」を指定
liに対して「margin:auto」を指定してみます。
コードは以下です。
<ul class="pattern8">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern8 li{
margin: auto;
}実行するとこんな感じ↓

一緒の結果ですね。
③-3:親要素に対して「margin:auto」を指定
親要素に対して「margin:auto」を指定してみます。
コードは以下です。
<div class="pattern9">
<ul>
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>
</div>.pattern9{
margin: auto;
}実行するとこんな感じ↓

はい。すべて同じ実行結果でした。
④タグに「margin:auto」を指定+widthを指定
最後に、タグに「margin:auto」を指定+widthを指定するパターンを見ていきましょう。
私がやりたかったのはこれです。
画面中央に箇条書きを作成し、テキストを左揃えしたかったのです。
④-1:ulに対して「margin:auto」を指定
まずは、ulに対して「margin:auto」を指定してみます。
コードは以下です。
<ul class="pattern10">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>
.pattern10{
width: fit-content;
margin: auto;
}実行するとこんな感じ↓

画面中央に箇条書きを作成し、テキストを左揃えになっています。
ようやくできましたね。
④-2:liに対して「margin:auto」を指定
つぎに、liに対して「margin:auto」を指定してみます。
コードは以下です。
<ul class="pattern11">
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>.pattern11 li{
width: fit-content;
margin: auto;
}実行するとこんな感じ↓

ああ、違う。
この絶妙にイケてない箇条書きが本当に嫌でした…
④-3:親要素に対して「margin:auto」を指定
最期に親要素に対して「margin:auto」を指定してみます。
コードは以下です。
<div class="pattern12">
<ul>
<li>テキスト</li>
<li>テキストテキスト</li>
<li>テキストテキストテキスト</li>
<li>テキストテキストテキストテキスト</li>
</ul>
</div>.pattern12{
width: fit-content;
margin: auto;
}実行するとこんな感じ↓

うんうん。バッチリですね。
これで私のやりたい箇条書きができました。
まとめ
以上が、「ul・olを使った箇条書き左揃えのパターン」でした。
画面左に箇条書きを作成したいときは、タグに「margin:auto」を指定
画面中央に箇条書きを作成したいときは、タグに「margin:auto」を指定+widthを指定
まあ、こんなことはわざわざ覚える必要はないと思うので、「あれ?どうやるんだっけ?」ってなった際にはまた本記事に来ていただけると幸いです。
お疲れさまでした。
