2014年11月15日 web関連HTML5・CSS3

レスポンシブ対応のサイトを作るときに画像メニューを設置して、ブラウザが縮小されても画像が改行されることなく、1列で固定で、画像の比率を保ったまま縮小表示させる方法です。

cssのdisplay:table-cellで解決

html

<ul id="nav">
<li><a href="#"><img src="
nav_home.png" alt="ホーム"></a></li>

<li><a href="#"><img src="nav_shop.png" alt="店舗案内"></a></li>

<li><a href="#"><img src="nav_contact.png" alt="お問い合わせ"></a></li>

</ul>

css

#nav ul {
  display: table;
}
#nav li {
  display: table-cell;
  padding-top: 1px; 
}

親要素にdisplay:tableを設定し、揃えたい子要素にdisplay: table-cell;を設定。
これでもブラウザサイズに合わせて、画像は縮小されるのですが、ブラウザのサイズによっては、以下の画像のように1pxほどずれてしまいます。
スクリーンショット 2014-11-15 16.11.05 vertical-alignを設定しても解決出来なかったので、padding-top: 1px;を設定して対応しました。
このpaddingの設定については、無理やり感があるので、もう少しスマートな方法をご存じの方がいらっしゃいましたら、コメントいただけますと嬉しいです。

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

HTML上に配置した画像に隙間が出来るときの対処法

2012年02月10日 web関連
配置した画像に余計な隙間(スペース)が出来る HTML上に画像を配置したときに、予期せぬスペースが出来るときってありませんか?(画像参照)単純に配置しただけなのに・・・と思うのですが、そんな時はCSSを以下のように設定することで解決できます。 解決策 CSSファイルに以下の設定を記述する。 [php]img { vertical-align: top; }[/php] …
「HTML上に配置した画像に隙間が出来るときの対処法」をはてなブックマークに追加

Twitter API の利用回数制限を確認する

2011年07月29日 web関連twitter API
Twitter API (GET送信のみ?) には利用回数上限があります。Twitter APIを利用してサービスを作る際に、試行錯誤していると、いつの間にかAPIの利用回数上限にひっかかってしまいます。利用回数上限にひっかかると,一定時間(およそ1時間らしいです)そのアカウントまたはそのIPアドレスからアクセスできなくなります。 …
「Twitter API の利用回数制限を確認する」をはてなブックマークに追加

IE6で透過pngを表示させる方法のメモ

2012年02月09日 web関連
最近は透過pngを上手に使ったサイトも増えてきたので、IE6を気にせずに、透過pngを普通に使って、サイトを作りたいと思ってたのですが、IE6の使用率がゼロでない以上は、やっぱり気になってしまうので、お手軽な方法を調べていたら、詳しくまとめられているサイトを見つけたので、メモしておきます。 個人的に特に気になったのは、「ie7.js」と「DD_belatedPNG.js」です。他の方法は既知のも…
「IE6で透過pngを表示させる方法のメモ」をはてなブックマークに追加

iPhoneのホーム画面に表示されるサイトへのショートカットアイコンを設定

2013年10月31日 web関連iPhone
[php]<link rel="apple-touch-icon" href="画像パス" /> [/php] サイズに関して 引用 : http://arigato-ipod.com/lab-webclip-apple-touch-icon.html 引用 : http://ozpa-h4.com/2012/03/29/…
「iPhoneのホーム画面に表示されるサイトへのショートカットアイコンを設定」をはてなブックマークに追加

IE6をHTML5に対応させる

2012年02月14日 HTML5・CSS3jQuery・javascript
IEのHTML5対応状況 IE6だけでなく、IE8以下は全てHTML5に対応していません。 それを対応させるために「html5.js」というjavascriptを読み込ませます。 使い方は簡単で以下のコードをタグの前の内に記述します。 [php] <!--[if lt IE 9]> <script src="//html5shim.googlecode.com/…
「IE6をHTML5に対応させる」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy