●リストマーカーの代わりに画像を表示する方法。
●画像を項目の前にポイント(仮想のリストマーカー)として表示して
その位置を調整する方法を確認してきました。
前頁で
画像を表示するためにclassを定義したのが、下記のCSSでしたね。
【参照CSS:画像をポイントにするためのclassの定義】
.samp9 ul{
list-style:none;
margin-left:0px;
padding-left:0px;
background-image:url('url');
background-repeat:no-repeat;
background-position:left 15%;
margin:0px 0px 0px 36px;
padding:0px 0px 0px 24px;
}
⇒class名
⇒マーカーを表示しない
⇒デフォルトの位置をクリア
⇒画像と項目の空きクリア
⇒画像の呼び出し
⇒画像の繰り返し表示しない
⇒画像の表示位置
⇒左ヘリからの位置
⇒項目から画像への空き
⇒セレクタ閉め
上記のCSSの中で「赤文字」で記入している
marginとpadding
の役割にについては、まだ確認していませんね。
両プロパティの値を入れ変えながら見て行きましょう。
参照CSSの「class」の定義(青文字)では
list-style:none;
margin-left:0px;
padding-left:0px;
と定義して
●デフォルトで表示されるリストマーカーの非表示。
●表示領域の左ヘリ(縁)からの位置。
●項目と使用する画像の間の空き。
をクリアしています。
このように、
デフォルトでの表示を全てクリアしていますので
リストマーカーの代わりに
使用する画像と箇条書きの項目を表示する位置(場所)を
新たにCSSに定義する必要があります。
画像のプロパティでは
background-image:url('url');
background-repeat:no-repeat;
background-position:left 15%;
画像の呼び出し。
表示の方法。
位置。
をbackgroundで定義しています。
項目と仮想のリストマーカーとして使用する画像は
別個の存在ですので、新たに
項目の位置の定義が必要ですね。
項目の位置の定義には
margin
padding
のプロパティを使います。
【図1:marginとpadding】
↑ 画像をクリック。元画像が開きます。
「margin」は
記事表示領域、または指定された領域の上下左右の各ヘリからの位置の値を定義します。
左ヘリからの位置は
margin-left:●px;
margin:0px 0px 0px ●px;
どのプロパティの記入形式を使っても同じ意味になります。
「padding」
も位置を取るプロパティですね。
margin = ヘリからの距離であるのに対して
padding = テキストの表示領域からヘリに対する距離になります。
このように marinとpadding は
同じ位置を取るプロパティでも、その取り方と意味が異なります。
また記入する単位も
「px、pt」などの絶対サイズ、「em、%」のような相対サイズ
のどれでも構いません。
箇条書きで
仮想のリストマーカーとして画像を使う時の padding の距離の対象は「画像」になります。
箇条書きの項目とその頭に表示する画像との距離
つまり余白・空きです。
参照 
● 図1: marginとpadding
● 図2:paddingの余白の取り方@
● 図3:paddingの余白の取り方A
● 図2:paddingの余白の取り方@
● 図3:paddingの余白の取り方A
値の「0px」は「余白無し」を意味しますね。
余白無しとは
同じ位置から項目と画像を別々に表示することになりますので
両方が重なった形の表示になります。
↓
【表示例@】
@ABCDEF
- 那覇市
例@がその見え方です。
画像と箇条書きの項目が重なって表示されますね。
箇条書きと同時に表示している数字の@ABCDEFは
位置を確認しやすいようにメージャーとして表示しています。
このブログの基本書体は12pxですので、ヘリに触れている
@の左端が0px、Aの左は12px、B24pxのように見てください。
距離と余白の考え方は、行送り(字送り)と行間(字間)の考え方と
同じです。
■ 記事表示領域のヘリから余白を取る。
【CSS】
margin:0px 0px 0px 12px;
padding:0px 0px 0px 0px;
↓
【表示例A】
<
@ABCDEF
- 那覇市
「例2」は
ヘリから12px(1文字分)を開けて項目を表示しました。
marginの値は
「0px 0px 0px 12px;」
記事表示領域のヘリから右へ「12px」の位置。
1文字分離れたその位置に「項目と画像」は表示されます。
margin は各ヘリからの距離になりますので
別々に存在する項目も画像も指定された距離だけ移動します。
padding の値を
「0px 0px 0px 0px;」
としていますので「項目の表示位置」と「画像の表示位置」は同じ場所になり
重なった表示になります。
■ 項目と画像の間を空ける。
上記「例A」のpadding の値を調整します。
【CSS】
margin:0px 0px 0px 12px;
padding:0px 0px 0px 12px;
↓
【表示例B】
@ABCDEF
- 那覇市
【図2:paddingの余白の取り方@】
↑ 画像をクリック。元画像が開きます。
paddingは項目(テキスト)の方から
上下左右のヘリに向かってスペースを取るプロパティでしたね。
この場合は、padding が取る左への余白は
項目の前に画像を用いますので、距離を取る対象は画像になります。
つまり
「項目と画像の間を空ける」と同じ意味です。
padding:0px 0px 0px 12px;
は項目の左の12pxの位置に画像を表示する領域が空きます。
1文字分のスペースが有りますので、重なることなく表示されます。
表示例Bの形では画像と項目の間に隙間がないので
マーカーの位置としては見た目も窮屈ですね。
■ 項目と画像の間に1文字分の余白を作る。
【CSS】
margin:0px 0px 0px 12px;
padding:0px 0px 0px 24px;
↓
【表示例C-1】
@ABCDEF
- 那覇市
【図3:paddingの余白の取り方A】
↑ 画像をクリック。元画像が開きます。
画像の大きさ(12px) + 使用文字1字分(12px)= 24px
の余白を取り、その後に項目を表示するの形です。
「図3」の例のように、項目から24pxの余白と言うことは
●24pxの全てを余白が占めるのではなく
●頭の12pxの部分に画像が表示されますので
実質的な余白サイズは残りの12pxになります。
margin:・・・12px;
で、記事表示領域の左のへりから12pxの位置を指定。
padding:・・・24px;
で、項目の前に12pxの画像表示部分をつくり、12px(1文字分)を空け
その後ろに箇条書き項目を表示しています。
項目と画像の間に1文字分の余白を空けましたが
1文字分の余白では開き過ぎ
半角(6px)くらいの小さい余白の方が締りがあってスッキリするのでは
と言うときには
画像(+)半角字分の余白(6px)= 18px のサイズ
padding:0px 0px 0px 18px;
のように値を調整します。
余白サイズは1px単位で調整出来ます。
行並びや文字の間隔(送り)を考え、使用している文字の全角・半角を
基準としたサイズを使用した方が理想的です。
【表示例A-2】
@ABCDEF
- 那覇市
画像と項目の余白が半分になりましたね。
このくらいの余白が見た目にもスッキリするでしょう。
デザイン的な好みで修正して構いません。
■ ヘリからデフォルトに近い位置を決め、項目と画像を表示する。
margin padding
の表示の形式が分かりやすいように、箇条書きの階層構造形で確認します。
【CSS】
親項目「那覇市」
margin:0px 0px 0px 36px;
padding:0px 0px 0px 18px;
子項目「人口」
margin:0px 0px 0px 12px;
padding:0px 0px 0px 18px;
※階層構造の箇条書きの各classの適用、画像位置の修正は
前頁で確認しています。
↓
【表示例D】
@ABCDEF
- 那覇市
- 人口約318,000人、約135,500世帯
親項目
margin:0px 0px 0px 36px;
padding:0px 0px 0px 18px;
親項目の那覇市は
記事表示領域の左ヘリからmarginで36px(3文字)寄った位置に項目と画像を表示。
その項目と画像の間はpaddingで「全角+半角=1.5(18px)」の空きにしています。
子項目
margin:0px 0px 0px 12px;
padding:0px 0px 0px 18px;
親項目に内包(入り子)されている子項目が
margin: ・ ・ ・ 12px で取る対象としているヘリは
記事表示領域のヘリからではなく
親の箇条書き項目の領域(この例の薄紅色バックカラーの範囲)がヘリになります。
そのヘリから1文字右の位置(margin:12px)が画像の表示位置
padding:18px(実質6px)の余白を取って項目の表示にしています。
この表示形式の方がデフォルトでの表示位置に近いでしょう。
また
子項目に子項目を対象としたclassを適用させなければ
子項目の位置は親項目で定義したclassの値が継承され適用されます。
●画像表示位置についての注意点と
●階層構造の箇条書きについては
前頁の記事で確認していますので、チェックしておきましょう。
marginとpaddingはブログで画像や文章
あるいは段落、テーブルの作成などで頻繁に使うプロパティで
結構、重宝します。
上手く使うことによって
箇条書きでも思い通りの位置に画像や項目を配置出来るプロパティです。
ブログのレイアウトをきっちりと纏めたり
アフィリエイト用の説明箇条書きを目立たせたい
など、使い方は数多くあります。
使い方をしっかり把握しましょう。
………
記事上段の参照CSS
【画像をポイントにするためのclassの定義】には
画像の表示位置を決めるプロパティとして
background-position:
margin:
padding:
の3種類を使っています。
marginn padding
で位置決めをしているのだから
background-position:
は定義する必要はないのでは
と思えますね。
marginは
画像だけに作用するのではなく「画像と項目を含めた範囲」
つまり「行」の位置決めになります。
例えば
margin:10px 0px 0px 0px;
のようにtopから10pxとして適用した時には「画像と項目を含む行」が
前の行の行送りに10pxを足した位置に移動します。
このブログの例は、行送りは18pxですので
margin:10px 0px 0px 0px; は
18+10=28px
で、直前の行(上の行)から 28px の
位置が、画像と項目を表示する行の位置になります。
marginを上、あるいは下に適用する時には、それらのことを考えて
注意して使いましょう。
margin padding backgroundのプロパティを
重複して適用しているように見えますが
各々の役割があり、画像だけの「上下左右」の表示位置を決めるためには
background-position:プロパティが必要になります。
………
箇条書きの「項目」や「画像」の表示位置の調整は、
marginやpaddingの使い方を把握しておけば、比較的に簡単に出来ますので
レイアウトをしっかりと纏めたいときに応用して使い切りましょう。
シリーズでは
「箇条書きの基本(CSSの定義1)から(定義4)」の確認で
classへの定義とHTMLでの適用の例をいくつか挙げています。
使用例に伴う「class」を各確認の毎に作成して適用しました。
「class」を数多く作りましたので、CSSの記述が乱れています。
整理と纏めが必要です。
整理と纏めは「CSS」のシリーズで確認します。
▲HTMLの関連記事
http://tosiji-dreamafi.seesaa.net/article/133635358.html
★ご協力お願いいたします★
……人気ブログランキング……



