• ベストアンサー

list-style-image

リスト項目の先頭をlist-style-imageで設定したのですが、 図形が大きすぎて、図のようにテキストが右下に来てしまいます。 ┌──┐ │ 図 │ │   │abcde └──┘ テキストを中央にして、abcdeと図の間を1文字分くらい あけたいのですが、どうすればいいですか。

noname#147836
noname#147836
  • CSS
  • 回答数3
  • ありがとう数3

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

  • ベストアンサー
  • yui56544
  • ベストアンサー率69% (85/123)
回答No.1

リストマークに画像を指定する場合は、list-style-imageではなく、背景画像として指定した方が見栄えがよくなります 例えばこのような感じです li { backdround: url(画像のURL) left center no-repeat; padding: 3px 0px 3px 20px;  /*画像のサイズによるので調節してください*/ }

noname#147836
質問者

お礼

liの中でbackgroundを指定するんですか。 こんなこと出来るなんて初めて知りました。 ご回答有り難うございます。

その他の回答 (2)

回答No.3

>テキストを中央にして、 >abcdeと図の間を1文字分くらい { vertical-align: middle; list-style-position: outside; padding-left: 1em; } 未検証です。

noname#147836
質問者

お礼

3つも回答が来て、どうも有り難うです。 僕もまだ未検証です。 取り敢えず皆様にお礼をしておきます。

noname#147836
質問者

補足

ご報告します。 padding-leftはうまく行ったのですが、 vertical-alignはダメでした。 No1の方の方法は画像が重なってダメ。 beforeも機能せずでした。 結局No1の方の方法をdivで採用しました。 list項目なのにdivでいいのかと自問してます。 簡単なようでいて難しいですね。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

擬似要素:beforeとcontentプロパティを使いましょう。 <div class="nav">  <ul>   <li><a href=""></a></li> ・・の場合 div.nav ul,div.nav ul li{list-style:none; display:block; margin:0;padding:0;} div.nav ul li{margin:left:60px;} div.nav ul li:before{content:url(画像URL);position:relative;top:-20px;} とか・・

noname#147836
質問者

お礼

なんか複雑ですね。達人みたいです。 でも、4行目まで自分のソースに近かったします。 意外と相性がいいかもしれません。

関連するQ&A

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

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

    • ベストアンサー
    • HTML
  • css(スタイルシート)について

    最近スタイルシートを勉強しているものです。 外部スタイルシートにて body { margin: 0; padding: 0; background-image:url(img/back.jpg); background-repeat:repeat-y; background-position: center; background-color:#333333; } という記述で、背景の設定をしました。 プレビューイメージは背景=黒 中央=白といったイメージです。 中央=白の位置にテキスト文字を入れたいのですが、マージンもしくはパディング設定をしてしまうと ウィンドウのサイズによって背景と文字がずれてしまいます。 テキストの文章もcssで設定したい場合 どのように設定するのがよろしいでしょうか? よろしくお願いします。

    • 締切済み
    • CSS
  • HTML list-styleに見出し

    HTMLで、ブラウザ上での表示が 以下の様になるよう組んでいます。 ----------------------------------- コンテンツ大見出し (←大見出しはh3を使用予定) 1.見出し見出し見出し見出し   内容テキスト内容テキスト内容テキスト内容テキスト   内容テキスト内容テキスト内容テキスト内容テキスト 2.見出し見出し見出し見出し   内容テキスト内容テキスト内容テキスト内容テキスト   内容テキスト内容テキスト内容テキスト内容テキスト ~以下同様7、8項目くらい下に続く ----------------------------------- この場合、1~7項目まで続く、いわゆるリストなので list-styleを使った方がいいかな、と思い、当初 ↓ ----------------------------------- <ul> <li> <h4>見出し見出し見出し</h4> テキスト内容テキスト内容テキスト内容テキスト内容 </li> <li> <h4>見出し見出し見出し</h4> テキスト内容テキスト内容テキスト内容テキスト内容 </li> ~ </ul> ----------------------------------- と書いてみましたが、 <li>の中には<h>タグを入れるべきではないと拝見し、 では<dl>を使って ↓ ----------------------------------- <dl> <dt>見出し見出し見出し</dt> <dd>テキスト内容テキスト内容テキスト内容テキスト内容 </dd> <dt>見出し見出し見出し</dt> <dd>テキスト内容テキスト内容テキスト内容テキスト内容 </dd> ~ </dl> ----------------------------------- と組んでみました。 が、そうすると<dt>に番号がふれないのです。 どこかのサイトで、以下の様にスタイルシートに記述すればOKとありましたが dt { display: list-item; list-style: disc outside; … } 上記を記述しても実現できませんでした。 勿論「disc」の部分を「decimal」にしました。 実現方法だけで考えれば、 ・<dl>を使用して、見出し文の頭に自分で数字をつける ・<ul><li>を使用して、見出しの部分だけ<p>か何かで囲み、  スタイルシートで文字の大きさ太さを調整する ・list-styleではなく、各項目<div>で囲み、見出しは<h>タグを使う など、方法はあるのですが、 ・番号がふられている見出しはそれなりに重要視しているので  できればhタグか、見出しだと分かるタグを使用したい。 ・番号がふられているリスト(のようなもの)なのでlist-styleが適当のような気がする。 このような場合、皆さんはどう記述されていますか? どのような記述が正しいのでしょうか。 宜しくお願いします。

    • ベストアンサー
    • CSS
  • list-styleでの画像CSS設定について

    list-styleのをCSS設定で画像を指定しています。 文字サイズより大きい画像の場合に、うまく位置を調整できないのですが、どのように設定すればよいでしょうか? 現在のCSSはこのように設定しています。 .style_1 { list-style-image: url(画像url.gif); } フォントサイズ14ピクセルではピッタリはまるのですが、12ピクセルにするとリスト画像が上部に浮いたような形になってしまっています。 また、リスト画像とli要素(文章)までの間隔も離したいです。 CSSに詳しい方がいましたら、ご教授下さいませ。

  • listアイコン画像だけが中央揃えにならない

    listタグでリスト化したリンクを、中央揃えするように指定したdivで囲んでいるのですが リストアイコンの画像だけが中央揃えになってくれません。(添付画像参照) HTMLとCSSは以下の通りです。 <div class="box"> <ul class="list01"> <li>テキスト</li> <li>テキスト</li> </ul> </div> .box { text-align:center; } ul.list01 { list-style-image: url(~); } リストアイコンの画像もテキストと一緒に中央揃えにしたいのですが、 何かやり方があるのでしょうか? どなたかよろしくお願いします。

  • list-style-image・・マーカーとコンテンツの距離

    縦横15ピクセルのmarker.gifを使って、リストのマーカーに指定したいのですが・・・ たとえば、このようにすると、 ul { margin: 0px; padding: 0px; } li { background-color: lightgrey; margin: 0px 0px 5px 15px; padding: 0px; list-style-image: url("marker.gif"); list-style-position: outside; } IEやOperaでは、マーカーのすぐ左にコンテンツ(灰色の背景色つき)がくるのに対して、 Firefoxでは、マーカーとコンテンツの間に何ピクセルか隙間ができて、結果、マーカーが親エレメントより左側にはみ出してしまいます。 CSS2の仕様をしらべると、「marker-offset」というプロパティがあるようなのですが、まだブラウザが未対応のようで・・・ この隙間は、どういう定義なのでしょうか?規定値が決まっていたりするのでしょうか? また、変更することはできないのでしょうか?

    • ベストアンサー
    • HTML
  • word2007のスタイルの変更

    自分で買ってきたテキストで、 スタイルの変更の項目から、 自分でスタイルをいろいろと変更してみたのですが、 標準スタイルを既定のものから変更したらしく、 新規でWordを立ち上げると、フォントサイズが 11Pで、ルーラーの1行目のインデントが2文字分 右に寄っているのです。 行間も1.5になっており、最初にどんな設定だったかも わからなくなってしまいました(>_<) スタイルの変更からスタイルセットを選ぶと Word2003とかWord2007、エレガントやシンプルなどの 選択ができるようになっています。 Word2007だからこれかと思ってチェックすると 行間が1.5になっています。 インデントは動いていないですが、 フォントサイズは、11です。 どうやったら、最初の既定に戻れるのでしょう。

  • スタイルシートの横並びリスト中央配置について

    #Area_Navi { margin: 0; padding: 0; } #Area_Navi ul { margin-left: auto; margin-right: auto; text-align: center; list-style-type: none; list-style-position:inside; } #Area_Navi li { text-align: center; display: inline; padding: 0; margin-left: auto; margin-right: auto; float: left; width: 200px; } #Area_Navi a { display: block; border-left: 1px solid #000000; border-top: 1px solid #000000; border-bottom: 1px solid #000000; background-color: #FFFFFF; font-size: 20pt; padding: 3px; text-decoration: none; color: #000000; margin: 1px 0px; text-align: center; } スタイルシートは上記なのですが、うまく中央配置されず 半端に左寄せになっています。 windows7 firefox を使用しています。 調べて position:relative; と記載しても上手く中央寄せになりませんでした。 どなたか、教えて頂けませんか。 宜しくお願い致します。

    • ベストアンサー
    • CSS
  • EXCEL2007-VBAフォーム上のイメージオブジェクトに図形が設定

    EXCEL2007-VBAフォーム上のイメージオブジェクトに図形が設定されているかをチェックするには いつも親切な回答ありがとうございます。 VBAフォーム上のイメージに図形が設定されているかをチェックする方法を教えていただけないでしょうか イメージオブジェクトが5件あり、Shape図形が1,3,5番目に存在した場合 先頭のイメージオブジェクトから詰めて表示したいのですが、方法が分かりません。 どうぞ宜しくお願いします。

  • リストボックスの使い方

    VB2008エクスプレスを使っています ボタンを押すと画像や文字を表示することは出来るのですが リストボックスにいくつか項目を作り その項目ごとに表示される文字や画像を変えたいんですが どうすればいいのでしょうか? ちなみにボタンコントロールをダブルクリックして PictureBox1.Image = Image.FromFile("C:\Windows\大草原の風.bmp") と文を書くとピクチャーボックスに画像でます ここまでわかるのですが、リストボックスの項目ごとに 画像の種類を変えたりしたいです