
ホームページで時間に応じて2行のテキストを時計画像の上に表示したいのですが
以下のCSSを使った方法ではPCやアンドロイドではズレないで表示されます。
ただし親のiPhoneを借りて見ると
何故か文字位置が下の方にずれてしまい画像から文字がはみ出してしまいます。
ブラウザは標準ではいってるやつ(Safari?)です。
<div style="position: relative;">
<img src="hoge.jpg" width=250 height=46>
<div style="position:absolute; top:6px; left:20px;">
<table border=0 cellspacing=0 cellpadding=0>
<tr><td>この文章は</td></tr>
<tr><td>サンプルですよ</td></tr>
</table>
</div>
</div>
どうもiPhoneのSafariはフォントサイズを自動で調整する機能があるそうで
それを解除するために以下のCSSを追加してみました。
-webkit-text-size-adjust: none;
このCSSを追加するとフォントサイズは変えていなくても表示は小さくなり
位置ずれはマシにはなりました。
が、それでも行間が大きいためか画像からははみ出しています。
テーブル部分を2個に分離してそれぞれ位置を修正すれば、と思ったのですが
それだとSafari以外は詰まって表示されてしまいますよね・・・シクシク。
他のブラウザならともかくiPhoneの標準ブラウザなので何とか直したいです。
これを修正できる方法をご存知の方はおられますでしょうか?
画像の上に文字を表示できるのでしたら、
上記のCSSとはまったく別のものになっても構いません。
よろしくおねがいします。
No.1ベストアンサー
- 回答日時:
それが背景画像でしたら、背景で指定しましょう。
位置が時間によって変わるのでなければ背景をcoverで置けばよいです。tableを配置のために使用するのは禁止です。tableは表のマークアップ以外に使用すべきではありません。
位置指定は、親になるコンテナブロックに対して相対的/絶対配置で指定すると良いでしょう。
HTML要素のstyle属性で指定すると、詳細度が[1,0,0,0]となってしまって外部スタイルシートなどで調整できなくなります。CSS3のメディアクエリ(Media Queries)を使用して端末の幅に合わせてスタイルを切り替えることができなくなります。
<div class="TimeMessage">
<p>この文章は、</p>
<p>サンプルです</p>
</div>
div.TimeMessage{width:250px;height:46px;margin:0 auto;background:url(hoge.gif);}
div.TimeMessage p{font-size:14px;margin:0;line-height:20px;padding-left:20px;}
※折角、文書構造とプレゼンテーションの分離のためにスタイルシートを使うのですから、HTMLにはプレゼンテーションに関わることは一切記述したらダメです。tableが配置目的なら無論です。
こうしておけば、スタイルシートを書き換えるだけで、背景をやめることも、すべてのページの<div class="TimeMessage">のデザインを変更できます。
ご回答ありがとうございます。
ほう・・・背景にしてしまうのですか、なるほど。
時計のフレームなので背景でも問題ないです。
CSSは個人サイトを運用する上で趣味の一環として始めたばかりなので
使い方のほうもとても参考になりました!
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript 画像の表示位置 3 2022/12/23 08:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
横幅1100pxのサイトをレスポン...
-
HTML 背景画像選び cookie記録
-
画像とその下にあるテキストの...
-
背景が透明な画像をwebサイトに...
-
ページごとに背景画像を変更し...
-
CSSでスクロールバー
-
<hr>の縦バージョンはありますか?
-
ワードプレスで事前定義されたc...
-
IEでの画像表示がうまくいかない
-
ネットスケープでのスタイルシ...
-
Firefoxのみ下に空白が出来るバグ
-
2重に背景画像を
-
画像にオンマウスで暗くする方法
-
同じ画像 複数回使用
-
スタイルシート IE環境でのバグ
-
css 画像とテキストボタンの作り方
-
画像にオンマウスで背景画像を固定
-
website作成 初心者
-
画像の設定について
-
HPサイト内で吹き出しをつくる。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【至急お助け!】チェックボッ...
-
【Webサイト】画像が小さく表示...
-
画像とその下にあるテキストの...
-
background-repeat CSS で切れ...
-
<hr>の縦バージョンはありますか?
-
WEB上でディレクトリ内の画像を...
-
IMGタグで画像の繰り返し使用は…
-
画像の上にテキスト配置で、拡...
-
同じ画像 複数回使用
-
background-sizeでcontainする...
-
iframe内をクリックさせない方...
-
要素の幅をいろんな写真の幅に...
-
background-sizeの背景で最小値...
-
ページごとに背景画像を変更し...
-
lightbox2で画像を天地左右中央...
-
CSSのrepeatで切れ目が出る
-
画像の大きさに合わせて文字の...
-
フッターの背景に色を指定した...
-
Safariでのひどいレイアウト崩れ
-
CSSで背景画像をランダムに表示...
おすすめ情報