• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CSSの左横に隙間ができてしまいます。)

CSSの左横に隙間ができてしまいます

このQ&Aのポイント
  • CSSを使用して画像の左横に謎の隙間ができてしまい、paddingやvertical-align、text-alignなどの方法では解決できない状況です。
  • 4枚の画像を配置したい場合、最後の1枚が改行されてしまっています。
  • 困っているので、この問題を解決する方法を教えてほしいです。

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

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

リストの整形はぶらうざによって差があります。ul要素やli要素に、またmarginで左を空けていたり、パディングで空けていたりします。 そのため、 #menue ul,#menue ul li{ display:block;list-style:none; margin:0;padding:0; text-align:center;line-height:20px; } のようにセレクタをグループ化してまとめておけば、ブラウザ間の差を吸収できます。 そのうえで、 #menue ul li{display:inline;} または #menue ul li{float:left;} です。floatの場合はblockのまま、inline-blockの場合は、text-align:centerで横に並べます。  この場合 「ユーザエージェントは、語間スペースの出力処理に際しては、連続する空白類の入力があった場合は1つにまとめてしまう必要がある。 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/text.html#h-9.1 )」 という仕様--ルールのためli間にスペースができます。white-spaceに normal,pre,nowrap,pre-wrap,pre-lineのいずれを指定しても・・  そのためHTMLを <ul><li><img src="img/btn_A.gif" width="194" height="51"></li><li> <img src="img/btn_B.gif" width="140" height="51"></li><li> <img src="img/btn_C.gif" width="149" height="51"></li><li><img src="img/btn_D.gif" width="137" height="51"></li></ul> とかくことになります。  なお、 #menue ul li{width:23%;position:relative;} #menue ul li a{display:block;width:100%;height:100%;text-decoration:none;} #menue ul li img{display:block;width:100%;height:100%;} とすると、ウィンドウ幅に合わせて伸縮しますから、そもそもの悩みはなくなります。 この場合でも、

poifulls
質問者

お礼

さらにリストの説明もありがとうございます。 最後、文章途切れちゃったみたいですが・・・ 解決後もご丁寧に説明いただいたので、ベストアンサーに選ばせてもらいました。

その他の回答 (1)

  • outbrave
  • ベストアンサー率60% (231/380)
回答No.1

#menu ul { margin:0; padding:0; } padding:0; の追加で横並びにはなります。

poifulls
質問者

お礼

早速のご回答ありがとうございます。 この回答を見る前に自己解決してしまいました。 いままで、"画像に余白が入る"というワードで検索してましたが、 "listに余白が入る"というワードで検索するとヒットしました。 li の部分にあったmargin、padding、list-style-typeをulに移しました。 #menu ul { margin: 0px; padding: 0px; list-style-type: none; } #menu li { display:inline; float:left; }

関連するQ&A

専門家に質問してみよう