• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:float: leftで横に並べたら、サファリだけ)

サファリでfloat: leftで横に並べたら隙間が空いてしまう問題の対処方法

このQ&Aのポイント
  • float: leftで横に並べた画像がサファリで隙間が生じる問題について解決方法を紹介します。
  • float: leftで画像を横に並べた場合、サファリでは隙間が生じることがあります。この問題を解決するためには、特定のCSSスタイルを適用する必要があります。
  • float: leftで横に並べた画像にサファリで隙間が生じる問題を解決する方法をご紹介します。CSSの修正を行うことで適切な表示ができるようになります。

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

  • ベストアンサー
  • tkmojo
  • ベストアンサー率50% (105/207)
回答No.3

ちょっとコードとcssに突っ込みどころがやたら多いですが、とりあえずサファリの隙間を消す事だけで考えるとimgとbrの間にある改行を削除すればいいです。 コード内の改行が半角スペース扱いになる事は結構あるので注意しましょう。

webuser
質問者

お礼

有難うございます。 目的としては、これだと思います。

すると、全ての回答が全文表示されます。

その他の回答 (2)

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

HTML5版です。 ★brは、通常の文書では登場しないはずです。 ★HTMLには文書構造だけ書くようにすると、先でデザイン変えるときも楽ですし、メンテナンスも容易になります。 <!doctype html> <html> <head> _<meta charset="utf-8"> _<title>サンプル</title> _<meta name="description" content=""> _<meta name="author" content="ORUKA1951"> <style media="screen"> <!-- html,body{margin:0;padding:0;} h1,h2,h3,h4,h5,h6{margin:0;line-height:1.6em;} p{text-indent:1em;} header,section,footer{width:90%;min-width:470px;max-width:900px;margin:0 auto;padding:5px;} section section{width:auto;min-width:0px;} /* 色 */ body{background-color:gray;} header,section,footer{background-color:silver;} section section{background-color:white;} /* フロート */ section section ul{margin:1em;padding:0;} section section ul li{list-style:none;margin:0;padding:0;float:left;position:relative;height:150px;} section section ul li p{margin:0;position:absolute;bottom:0;width:100%;background-color:rgba(0,0,0,0.6);color:white;} section section ul:after{content:"";white-space:pre;clear:left;display:block;} --> </style> </head> <body> _<header> __<h1>タイトル</h1> __<p>このページでは・・・・</p> _</header> _<section> __<h2>見出し</h2> __<p> ___ざっと、見る限り画像リストのようですから、画像リストとしてマークアップしてあります。また、opacityだと文字まで半透明になってしまって画像の地色によったみえにくくなるので背景だけ半透明にしておきました。 __</p> __<section> ___<ul> ____<li> _____<img src="./img/img-001.png" width="240" height="150" alt="富士山の写真1"> _____<p>テストテスト1</p> ____</li> ____<li> _____<img src="./img/img-002.png" width="240" height="150" alt="富士山の写真2"> _____<p>テストテスト2</p> ____</li> ____<li> _____<img src="./img/img-003.png" width="240" height="150" alt="富士山の写真3"> _____<p>テストテスト3</p> ____</li> ___</ul> __</section> _</section> _<footer> __<h2>文書情報</h2> __<dl class="documentHistry"> ___<dt id="FIRST-PUBLISHED">First Published</dt> ___<dd>2013-03-03</dd> __</dl> _</footer> </body> </html>

webuser
質問者

お礼

有難うございます。

すると、全ての回答が全文表示されます。
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

通常はそのようなdivの使い方はしません。HTML5ではさらに厳しくなって 【引用】____________ここから NOTE: Authors are strongly encouraged to view the div element as an element of last resort, for when no other element is suitable. Use of more appropriate elements instead of the div element leads to better accessibility for readers and easier maintainability for authors.  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[4.4 Grouping content — HTML5( http://www.w3.org/TR/2014/REC-html5-20141028/grouping-content.html#the-div-element )]より  --著者は、 他に適切な要素がないときの最後の最後の手段として div要素を使用することが強く推奨されます。div 要素の代わりにより適切な要素を使うことは、読者にとってはアクセシビリティの向上に、著者にとってメンテナンス性の向上につながります。--- ※HTML4.01でも、『文書に構造を付加するため( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.5.4 )』でしたね。  とっても大事なことなので、本題とは関係ないですが念のため  さて、原因はいくつか考えられますが、最も可能性が高いのはDOCTYPE宣言によるDOCTYPE スイッチ( https://www.google.co.jp/search?q=DOCTYPE%20%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81&ie=utf-8&oe=utf-8&hl=ja )でしょう。  下記にどのブラウザも標準モードで動作するように書いたHTMLをあげて起きます。なお、HTMLは、HTML4.01strictです。時代遅れなXHTMLではありません。 『HTML文書を作る場合には、この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/conform.html#h-4.1 )』 ★スタイルシートは、この場合は<head></head>内に書くほうが良いでしょう。 ★Another HTML Lint - Gateway( http://www.htmllint.net/html-lint/htmllint.html# )  でチェック済み ★タブは_に置換してあるので戻す。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="ja"> <head> _<meta http-equiv="content-type" content="text/html; charset=Shift_JIS"> _<title>サンプル</title> _<meta name="author" content="ORUKA1951"> _<meta http-equiv="Content-Style-Type" content="text/css"> _<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" > _<link rel="START" href="../index.html"> _<style type="text/css"> <!-- html,body{margin:0;padding:0;} h1,h2,h3,h4,h5,h6{margin:0;line-height:1.6em;} p{text-indent:1em;} div.header,div.section,div.footer{width:90%;min-width:630px;max-width:900px;margin:0 auto;padding:5px;} div.section div.section{width:auto;min-width:0;} /* 色 */ body{background-color:gray;} div.header,div.section,div.footer{background-color:silver;} div.section div.section{background-color:white;} /* フロート */ div.section div.section ul{margin:1em;padding:0;} div.section div.section ul li{list-style:none;margin:0;padding:0;float:left;position:relative;height:150px;} div.section div.section ul li p{margin:0;position:absolute;bottom:0;width:100%;background-color:rgba(0,0,0,0.6);color:white;} div.section div.section ul:after{content:"";white-space:pre;clear:left;display:block;} --> _</style> </head> <body> _<div class="header"> __<h1>タイトル</h1> __<p>このページでは・・・・</p> _</div> _<div class="section"> __<h2>見出し</h2> __<p> ___ざっと、見る限り画像リストのようですから、画像リストとしてマークアップしてあります。また、opacityだと文字まで半透明になってしまって画像の地色によったみえにくくなるので背景だけ半透明にしておきました。 __</p> __<div class="section"> ___<ul> ____<li> _____<img src="./img/img-001.png" width="240" height="150" alt="富士山の写真1"> _____<p>テストテスト1</p> ____</li> ____<li> _____<img src="./img/img-002.png" width="240" height="150" alt="富士山の写真2"> _____<p>テストテスト2</p> ____</li> ____<li> _____<img src="./img/img-003.png" width="240" height="150" alt="富士山の写真3"> _____<p>テストテスト3</p> ____</li> ___</ul> __</div> _</div> _<div class="footer"> __<h2>文書情報</h2> __<dl class="documentHistry"> ___<dt id="FIRST-PUBLISHED">First Published</dt> ___<dd>2013-03-03</dd> __</dl> _</div> </body> </html>

webuser
質問者

お礼

有難うございます。

すると、全ての回答が全文表示されます。

専門家に質問してみよう