

画像の表示・非表示に関してですが、非表示にしたときその分だけ詰めるように表示はできないのでしょうか?
下記のサンプルでは、ボタンを押せば画像は消えますが消えた領域だけ不自然に残ります。
消えた領域分ボタンを上げてくることはできないのでしょうか?
以下サンプル
//ここから
<html>
<head>
<title>Sample</title>
<script type="text/javascript"><!--
function visImage(vType)
{
document.images["photo"].style.visibility = vType;
}
// --></script>
</head>
<body>
<img src="photo.jpg" name="photo">
<form>
<input type="button" value="画像を表示する" onClick="visImage('visible')">
<input type="button" value="画像を消す" onClick="visImage('hidden')">
</form>
</body>
</html>
//ここまで
No.2ベストアンサー
- 回答日時:
win版IEではvisibility:collapseは実装されていませんね。
なのでdisplay:noneを利用する方が良いと思います。
element.style.display = 'none' の場合
//ここから
<html>
<head>
<title>Sample</title>
<script type="text/javascript"><!--
function visImage(vType)
{
//↓visibilityではなくdisplay
//document.images["photo"].style.visibility = vType;
document.images["photo"].style.display = vType;
}
// --></script>
</head>
<body>
<img src="photo.jpg" name="photo">
<form>
<!-- ↓visibleではなくinlineを渡す -->
<!--input type="button" value="画像を表示する" onClick="visImage('visible')"-->
<input type="button" value="画像を表示する" onClick="visImage('inline')">
<!-- ↓noneは文字列として渡す -->
<!--input type="button" value="画像を消す" onClick="visImage(none)"-->
<input type="button" value="画像を消す" onClick="visImage('none')">
</form>
</body>
</html>
//ここまで
imgタグはインラインレベルの要素なので表示する場合はinlineとします。
ブロックレベル要素の場合はblockとします。

No.4
- 回答日時:
ちょっと似たような質問に答えたので使えるかも?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title>TEST</title>
<div>
<img src="photo.jpg" width="200" height="100" alt="fumei" id="photo">
<form>
<p>
<input type="button" value="画像を表示する" onClick="changeDisplay(this,'photo')">
</p>
</form>
</body>
<script type="text/javascript">
function changeDisplay( btn, element ){
if( typeof( element ) == 'string' ) element = document.getElementById( element );
var f = element.style.display == 'none';
btn.value = f? '画像を消す': '画像を表示する';
element.style.display = f? 'inline': 'none';
}
</script>
No.1
- 回答日時:
非表示を element.style.visibility = 'hidden' で実現されていますが、代りに以下を試してみてください。
element.style.display = 'none'
または
element.style.visibility = 'collapse'
P.S. 私の InternetExploler6 は、visibility = 'collapse' でエラーします。
参考URL:http://www.y-adagio.com/public/standards/tr_css2 …
回答ありがとうございます
以下のようにすればいいのでしょうか?
理解が間違ってたらご指摘お願いします。
以下2つとも次のようなエラーが出ました
IE7を使用しています
---------------------------------------------------
ライン:7
文字:2
エラー:visibility プロパティの値を取得できませんでした。引数が無効です。
コード:0
---------------------------------------------------
element.style.display = 'none' の場合
//ここから
<html>
<head>
<title>Sample</title>
<script type="text/javascript"><!--
function visImage(vType)
{
document.images["photo"].style.visibility = vType;
}
// --></script>
</head>
<body>
<img src="photo.jpg" name="photo">
<form>
<input type="button" value="画像を表示する" onClick="visImage('visible')">
<input type="button" value="画像を消す" onClick="visImage(none)">
</form>
</body>
</html>
//ここまで
element.style.visibility = 'collapse'
//ここから
<html>
<head>
<title>Sample</title>
<script type="text/javascript"><!--
function visImage(vType)
{
document.images["photo"].style.visibility = vType;
}
// --></script>
</head>
<body>
<img src="photo.jpg" name="photo">
<form>
<input type="button" value="画像を表示する" onClick="visImage('visible')">
<input type="button" value="画像を消す" onClick="visImage('collapse')">
</form>
</body>
</html>
//ここまで
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBscriptの配列変数をJavascrip...
-
TextBoxに半角数字以外を入れた...
-
フォーカスが外れた時の入力チ...
-
ページ間で変数を保持したい
-
jQueryのdatepickerの日付が選...
-
テキストボックスの最後に自動...
-
プルダウンで選択すると、DBの...
-
一覧から選択した行の行番号を...
-
sessionの値でボタンを活性・非...
-
プルダウン選択を変更すると、...
-
cookie使用時にundefinedと表示...
-
CSVファイルを読みこみ、プルダ...
-
【jsp/Java】チェックボックス...
-
1つのform内に2つのsubmitボタ...
-
onchangeイベントを強制的に発...
-
Selectボックスの幅を自動で広...
-
ボタン無しでフォーム内容送信
-
return trueとreturn falseの用...
-
確認ページからフォームページ...
-
【jQuery】input nameの文字列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TextBoxに半角数字以外を入れた...
-
子ウィンドウを閉じるとき、親...
-
フレーム内で計算した結果を他...
-
ページ間で変数を保持したい
-
HTMLファイル同士での値渡し
-
function名の変更はできますか?
-
フォームのPOSTデータをサブウ...
-
HTMLタグの生成について
-
ダイアログでFORMのsubmit()
-
ボタンに任意の動作をさせてテ...
-
大文字か小文字かを判断する方法
-
jQueryのdatepickerの日付が選...
-
blurイベントについて
-
子ウィンドウの情報を取得したい
-
<input type="text" name="Q1">...
-
javascriptについての質問です...
-
テキストエリアに履歴を残したい
-
フォームの内容でリンク先URLの...
-
【Javascript】(テキストボッ...
-
入力するテキストエリアをボタ...
おすすめ情報