制作者の活動(PR)。

堀北真希ちゃんをうさぎ化したオリジナルキャラクタ
主な作品

創作キャラクタのイラスト例とそれを組み込んだアニメーション動画

リストアイテムを横に並べる方法。

CSSの小技として、リストアイテムを横に並べる方法です。

リスト要素群において、リストアイテム(<li>要素,<dt>要素及び<dd>要素)は通常縦方向に並べられます。

それを横方向に並べて見ましょう

リストアイテムを横に並べる方法・目次。

初めに注意したい事。

リストアイテムに限った話ではありませんが、HTMLの要素にはブラウザ独自のデフォルトスタイルが当てられているものです。

スタイル定義が中途半端だと、デフォルトスタイルに影響されて正しく表示出来ないこともあります。

特にリスト系要素の場合スタイルが細かいので、きちんと再定義しておきましょう。

リストマーカの位置(<li>要素の場合)。

<li>要素ではリストマーカの位置を、リストアイテムの外部に設定している場合が多いのですが、マーカがリストアイテムの外部にあると、横に並べた時に重なったりしておかしくなる事があります。

そこで、list-style-positionプロパティinsideを当てる事で、マーカをリストアイテムの一部に組込んでしまいましょう。

余白・パディング。

一般に、リストアイテムには字下げ効果の為に余白とパディングが設定されています。

そこで、これらの影響を解消する為に、marginプロパティpaddingプロパティを使って適切に調整しましょう。

具体的にはpaddingプロパティは0にします。

marginプロパティは見易さを考慮して適宜調整します。

例えば<ul>要素内の<li>要素を横に並べたい場合には、以下のようなスタイルを設定しておくと良いでしょう。

ul li {
    margin: 0px;
    padding: 0px;
    list-item-position: inside;}

方法 1. リストアイテムの幅を揃えなくても良い場合。

一般にリストアイテムはブロックレヴェル要素に準じた扱いとなるので、当該要素の直前直後で改行が入ります。

そこで、リストアイテムをインライン要素扱い(インラインボックス)に変更すれば、この改行が無くなり、横に並ぶと言う訳です。

displayプロパティを用いる事で、表示方式の変更が可能になります。

また、marginプロパティで左右の余白を指定する事で、リストアイテムの前後に適切な余白が入って観易いものになります。

例えば<ul>要素内の<li>要素を横に並べたい場合には、以下のように書きます。

ul li {
    display: inline;
    list-item-position: inside;}

方法 2. リストアイテムの幅を揃えて並べたい場合。

この場合は、リストアイテムの横幅をwidthプロパティで指定しますが、一般にブロックレヴェル式の要素(ブロックレヴェルボックス)は上から下に並べられて行きます。

そこで、floatプロパティでフローティングすることで、左から順に並べるようにしましょう。

例えば<ul>要素内の<li>要素を横に等幅で一行に三つづつ並べたい場合には、以下のように書きます。

ul li {
    float: left;
    width: 33%;
    margin: 0;
    padding: 0;
    list-item-position: inside;}

横幅は、親要素(<ul>要素)によって定まった幅に対する比率を指定します。三つづつ並べるには、100%÷ 3≒33%とすれば良い事になります。

しらぎくのウェブサイト作成入門サイトマップ

ページ外へのご案内。

marguerite.site@gmail.com