特定のブラウザでリストで指定したマークの位置がずれてしまい困っています。
safari,firefoxは大丈夫なのですが、IE7,operaだと文字に対してより過ぎて、さらに文字半個分、左斜め上に表示されてしまいます。
リストマークのサイズは20×20です。
マークをlist-style-type: square;などにすると普通に表示されます。
非常に困っています。宜しくお願いします。
<style type="text/css">
<!--
body {
background-color: #333333;
background-image: url(images/left_background.jpg);
background-repeat: repeat-y;
width: 150px;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
a:link {
color: #FFFFFF;
text-decoration: none;
}
a:visited {
color: #FF6600;
text-decoration: none;
}
a:hover {
color: #FFCC00;
text-decoration: underline;
}
a:active {
color: #990000;
text-decoration: none;
}
-->
</style>
<style type="text/css">
<!--
ul {
margin-top: 0px;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
line-height: 40px;
font-size: large;
font-weight: bold;
list-style-image: url(images/arrow.gif);
list-style-position: outside;
}
#base {
margin-right: auto;
margin-left: auto;
margin-top: 0px;
margin-bottom: 0px;
padding-top: 20px;
padding-left: 20px;
}
-->
</style>
<link rel="shortcut icon"href="/images/favicon.ico" />
<style type="text/css">
<!--
body,td,th {
font-family: Arial, Helvetica, sans-serif;
}
.style24 {font-size: x-large}
-->
</style>
</head>
<body>
<div id="base">
<ul>
<li> <a href="main.html" target="mainFrame">Home</a></li>
<li> <a href="image.html" target="mainFrame">Image</a></li>
<li> <a href="flash.html" target="mainFrame" >Flash</a></li>
<li> <a href="logic.html" target="mainFrame" >Music</a></li>
<li> <a href="link.html" target="mainFrame"> Link</a></li>
</ul>
</div>
</body>
No.1ベストアンサー
- 回答日時:
list-style を、やめて background での表示ではダメでしょうか。
ul {
font-size: large;
font-weight: bold;
margin: 10px 0 0 0;
padding: 0;
list-style: none;
}
li {
padding: 0 0 20px 40px;
background: url(images/arrow.gif) no-repeat 10px 2px;
}
/*
padding 20px の調整で line-height の代用、40px の調整で左からの位置を変えれます。
background 10px 2px の調整で画像の表示位置を変えれます。
*/
上記の方法がいやなら、無視してください。
No.2
- 回答日時:
list-style-imageプロパティでリストマークを画像にした場合の表示位置(画像の大きさに対するテキストとの位置のバランス)は各UAに依存しますので、CSSでは調整できません。
なので、「IE7,operaだと文字に対してより過ぎて、さらに文字半個分、左斜め上に表示されて」という状態は「リストに指定したマークの位置がずれて」しまっているわけではなく、そのUA上でのディフォルト表示なのです。「マークをlist-style-type: square;などにすると普通に表示」されるのは、その場合のリストマークはテキスト部分と(フォント・サイズ等が)セットになっているから常に相対的にバランスが取れている為です。リストマークに画像を使い且つ微妙な位置の表示にこだわる場合は、ANo.1の回答者様がアドバイスされている通り、liに対するbackgroundとpaddingの各プロパティで設定するしかないですね。こちらの方法の方が使い勝手がいいことは確かです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- HTML・CSS <!DOCTYPE html> <html> <head> <meta charset="utf-8 2 2023/01/05 01:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
中点「・」の改行について
-
widthやheightの数値に単位(px...
-
【CSS】ヘッダーの高さが不明の...
-
表示倍率を変えるとレイアウト...
-
css初心者 フレックスボックス...
-
テキストボックスの高さを可変...
-
HTMLのiframeの入れ子について
-
定義リストに下線をつけたいと...
-
投稿フォームの整列
-
div領域をウインドウサイズに合...
-
Firefoxで見るとli要素レイアウ...
-
画像の位置指定
-
Firefoxでheight:100%がきかない?
-
回り込みについて(間隔が空く)
-
初心者html・CSS ウィンドウを...
-
divで囲まれたpaddingの指定を...
-
CSSで背景色を下まで表示させたい
-
CSSでテキストインデントをマイ...
-
入力フォームとセレクトボック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
css初心者 フレックスボックス...
-
form input テキストを上下中央...
-
<div>と<div>の間の10px程の...
-
CSSがなぜかfont-sizeだけ効か...
-
divで囲まれたpaddingの指定を...
-
表示倍率を変えるとレイアウト...
-
画像イメージの上下左右、欲し...
-
CSS、width100%でもできる余白
-
cssで中央寄せ
-
CSS:animation開始位置の設定
-
スクロールボックスを中央に配...
-
CSSで背景画像を一番下にもって...
-
【CSS】ヘッダーの高さが不明の...
-
初心者html・CSS ウィンドウを...
-
footer を横幅いっぱいに広げる...
-
CSSで指定した背景画像にリンク...
-
div領域をウインドウサイズに合...
-
W3Cのソースコードの検証サービ...
おすすめ情報