画像の表示・非表示に関してですが、非表示にしたときその分だけ詰めるように表示はできないのでしょうか?
下記のサンプルでは、ボタンを押せば画像は消えますが消えた領域だけ不自然に残ります。
消えた領域分ボタンを上げてくることはできないのでしょうか?
以下サンプル
//ここから
<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で質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Javascript】(テキストボッ...
-
TextBoxに半角数字以外を入れた...
-
フォームの内容でリンク先URLの...
-
プルダウンで選択された値を別...
-
jQueryのdatepickerの日付が選...
-
javascriptのちょっとした動作...
-
JSPでonChangeを強制発行するに...
-
フォームのPOSTデータをサブウ...
-
ページ間で変数を保持したい
-
マイナスなら赤字で表示したい...
-
FireFoxでfocus()が上手く動かない
-
onBlurのイベントを使ってデー...
-
カーソルが当たった箇所に吹き...
-
ユーザー入力値の正誤判定をブ...
-
IE上のカーソル位置に文字列を...
-
GetElementByIdがうまく取得で...
-
return trueとreturn falseの用...
-
<JavaScript>tableタグを入力不...
-
【jQuery】input nameの文字列...
-
onchangeイベントを強制的に発...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TextBoxに半角数字以外を入れた...
-
ページ間で変数を保持したい
-
HTMLファイル同士での値渡し
-
tabindexの取得
-
プルダウンで選択された値を別...
-
マイナスなら赤字で表示したい...
-
フォームの内容でリンク先URLの...
-
テキストエリアに履歴を残したい
-
テキストボックスに入力した色...
-
イベント発生順序
-
どちらかひとつのテキストボッ...
-
HTMLとJavaScriptで作った表示...
-
VBSからjavascript
-
GetElementByIdがうまく取得で...
-
大文字か小文字かを判断する方法
-
JSPでonChangeを強制発行するに...
-
VBScriptでpingを実行(ブラウザ...
-
javascriptのちょっとした動作...
-
VBscriptの配列変数をJavascrip...
-
画像の表示非表示について質問です
おすすめ情報