- ベストアンサー
画像の大きさが変わってしまいます
- 画像の拡大領域と小さな画像の表示方法について質問があります。
- 拡大領域には一つ目の画像を正しく表示できるが、2個目以降は大きく表示されてしまう問題があります。
- 画像の元々のサイズがばらばらなために、大きさが変わってしまう現象を防ぐ方法はあるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
なにかのプログラム(javascrptst)内の書き方ですか? ここは、「Webデザイン・CSS」ですので、ちょっとカテゴリーが違うので、HTML+CSSとして回答しておきます。 「拡大領域があって、その下に小さな画像が10個ある形です。」との事ですので、多分HTMLを率直に記述すると <ol id="album"> <li><img src="images/thumbnail/01.jpg" width="80" height="60" alt="なんとかの縮小写真"> <p><img src="images/photo01.jpg" width="640" height="480" alt="なんとか"></p> </li> <li><img src="images/01.jpg" width="80" height="60" alt="なんとかの縮小写真"> <p><img src="images/photo/02.jpg" width="640" height="480" alt="なんとか"></p> </li> ・・・ </ol> とかのはずですね。・・・そんな難しいものではないので、率直に文書構造どおりマークアップしておきます。 スタイルシートで #album,#album li{display:block;list0style:none;margin:0;padding:0;} #album{width:800px;height:600px;margin:0 auto;border:1 gray solid;text-align:center;position:relative;} #album li{width:100px;float:left;} とか・・・ HTMLはデザインは一切考えすに書くこと!!! [全体]とっても簡単な例ですが・・こんなに簡単なものかと思うけど・・ ・画像の縦横比やサイズが異なっていても中央に表示される。 ・縦長ではみ出る場合はスクロールが現れる。 ・スタイルシートを解釈しないブラウザや印刷のため、thumbnail画像、拡大画像とも任意のサイズで記載しておく。 印刷を想定するなら実幅1028pxをwidth="540"とかにすると良い(きれいに印刷できる) ・javascriptを使わず、HTML+CSSのみで作成してある。 javascript無効のブラウザでも利用できる。 印刷時は一覧として表示される。印刷プレビューで確認 ★Another HTML-lint gateway ( http://openlab.ring.gr.jp/k16/htmllint/htmllint.html ) ★W3C CSS 検証サービス ( http://jigsaw.w3.org/css-validator/#validate_by_input ) ウェブ標準(HTML4.01strict+CSS2.1)です。 ※タブは、_に置換してあるので戻すこと。 <!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" media="screen"> <!-- #album,#album li{display:block;list-style:none;margin:0;padding:0;} #album{width:800px;height:680px;margin:0 auto;border:1px gray solid;text-align:center;position:relative;} #album li{width:80px;float:left;margin-top:515px;} #album li img{display:block;width:72px;height:auto;} #album li p{position:absolute;top:0;left:0;width:100%;height:500px;overflow:auto;display:none;border:solid 1px red;} #album li p img{display:block;width:600px;height:auto;margin:10px auto;} #album li:hover p{display:block;} --> _</style> </head> <body> _<h1>サンプル</h1> <ol id="album"> _<li><img src="images/thumbnail/01.jpg" width="72" height="54" alt="なんとかの縮小写真"> __<p><img src="images/photo/01.jpg" width="640" height="480" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/01.jpg" width="54" height="72" alt="なんとかの縮小写真"> __<p><img src="images/photo/02.jpg" width="540" height="720" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/03.jpg" width="80" height="80" alt="なんとかの縮小写真"> __<p><img src="images/photo/03.jpg" width="800" height="800" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/04.jpg" width="72" height="54" alt="なんとかの縮小写真"> __<p><img src="images/photo/04.jpg" width="640" height="480" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/05.jpg" width="72" height="54" alt="なんとかの縮小写真"> __<p><img src="images/photo/05.jpg" width="640" height="480" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/06.jpg" width="72" height="54" alt="なんとかの縮小写真"> __<p><img src="images/photo/06.jpg" width="640" height="480" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/07.jpg" width="72" height="54" alt="なんとかの縮小写真"> __<p><img src="images/photo/07.jpg" width="640" height="480" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/08.jpg" width="72" height="54" alt="なんとかの縮小写真"> __<p><img src="images/photo/08.jpg" width="640" height="480" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/09.jpg" width="80" height="" alt="なんとかの縮小写真"> __<p><img src="images/photo/09.jpg" width="800" height="800" alt="なんとか"></p> _</li> _<li><img src="images/thumbnail/10.jpg" width="54" height="72" alt="なんとかの縮小写真"> __<p><img src="images/photo/10.jpg" width="540" height="720" alt="なんとか"></p> _</li> </ol> </body> </html>
お礼
丁寧に説明いただきありがとうございました。回答が来るまで、思考錯誤して、色々いじっていたところ、ただ単に拡大領域の大きさを指定していなかっただけでした。こんな根本的な所を見落とすとはまだまだですね。 説明も参考になり、勉強になりました。感謝いたします。ありがとうございました。