• ベストアンサー

list-style-iamgeの画像表示位置

list-style-iamgeを使って、 リスト表示していますが、 画像表示位置が FireFoxでは下端 IEでは中央になってしまいます。 list-style-には位置情報を設定するプロパティはないので、 どのように 画像-文字 の位置を中央にセットするのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#66720
noname#66720
回答No.3

リスト画像自体は動かせないので、文字のほうを動かしてやります。 ただし、liの文字はspan等の要素で囲ってやる必要があります。 <style> #sample li { list-style:url(rrr.jpg) inside; height:346px; line-height:346px; background:#ddd; vertical-align:top; } :root #sample span { vertical-align:top; } </style> <ul id="sample"> <li><span>ddddd</span></li> </ul> IE6~7、Firefox2~3、Opera9、Safari3で動作確認しましたが、このあたりの動作はかなり微妙なようなので、適宜確認しながらの作業が必要になると思います。

その他の回答 (3)

noname#66720
noname#66720
回答No.4

連投すみません。 必要内部分があったので、修正ました。 <style> #sample li { list-style:url(image.jpg) inside; height:100px; line-height:100px; vertical-align:top; } :root #sample span { vertical-align:top; } </style> <ul id="sample"> <li><span>ddddd</span></li> </ul>

noname#213810
noname#213810
回答No.2

list-style-imageはなぜか、どうやっても上手くいかなかった気がします。 そのため私は、liの背景に画像を左寄せに設定し、文字はpadding-leftで位置調整をしています。 ↓こんな感じです。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title>無題ドキュメント</title> <style type="text/css"> *{ margin:0; padding:0; } li{ margin-top:10px; list-style-type:none; background:url(test.jpg) no-repeat center left; margin-left:30px; padding-left:20px; } </style> </head> <body> <ul><li>ああああああ</li></ul> </body> </html>

  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

vertical-alignでは・・・?

関連するQ&A