• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:右から距離をとってfixedを使うと画像が消える)

右から距離をとってfixedを使うと画像が消える

このQ&Aのポイント
  • 画像(幅36px高さ136px)を上から0px右から300pxの位置で固定して表示させる方法について質問です。
  • 現在のソースでは画像が消えてしまうため、正しい方法を知りたいです。
  • rightの300pxを0pxにすると表示されますが、どうしても右から300pxの距離をとりたいです。

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

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

説明すると a[href="http://yahoo.co.jp"]{   属性セレクタ[詳細度 0 0 1 1]   href属性にこの値を持つa要素 display:block;   ブロック要素に変更しておく background-image: url("./images/test.png");   背景画像の指定 width:36px;height: 136px;   a要素の幅と高さ(blockに指定してあるので ) position:fixed;   ウィンドウ表示領域に対してa要素を固定 top:0px;right: 300px;   a要素の位置を指定する。!!!A要素の位置 text-indent:-20em;   内容を左に-20文字ずらす overflow:hidden;   指定サイズからはみ出したものの表示 background-position:top right;× background-position:top left;○  イニシャル値(初期値)なので書かなくて良い  ⇒Initial: 0% 0%( http://www.w3.org/TR/1998/REC-CSS2-19980512/colors.html#propdef-background-position ) background-repeat:no-repeat;  狭いので書かなくて良い background-attachment:fixed;  ウィンドウに対して固定・・ >※ちなみにrightの300pxを0pxにすると表示されますが、どうしても右から300px距離をとりたいです。  right: 300px;の値を0~30pxくらいに少しずつ変えれば原因はわかったはずです。  もちろん <p id="#YahooLogo"><a href="http://yahoo.co.jp">テスト</a></p>  とでもして、 #YahooLogo{ width:36px;height: 136px; position:fixed; top:0px;right: 300px; overflow:hidden; } #YahooLogo a{ display:block; hegiht:100%;width:100%; background-image: url("./images/test.png"); text-indent:-20em; } でもよいが、(構造上)意味ないのに、デザインのためだけにidを振るのには少し抵抗があるし、その分、HTML・スタイルシートが煩雑になる。

yuki_tigers
質問者

お礼

うまくいきました。本当にありがとうございます! ご丁寧に説明して下さったおかげです。本当にありがとうございました!

すると、全ての回答が全文表示されます。

その他の回答 (2)

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

いえテスト済みです。  ⇒Another HTML-lint 5( http://www.htmllint.net/html-lint/htmllint.html# ) でチェック済みのHTML4.01strictです。 [全文] タブは_に置換してあるので戻すこと <!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"> <!-- a[href="http://yahoo.co.jp"]{ display:block; background-image: url("./images/test.png"); width:36px;height: 136px; position:fixed; top:0px;right: 300px; text-indent:-20em; overflow:hidden; } --> _</style> </head> <body> _<div class="header"> __<h1>タイトル</h1> __<p>このページでは・・・・</p> _</div> _<div class="section"> __<h2>見出し</h2> __<p><a href="http://yahoo.co.jp">テスト</a></p> _</div> _<div class="footer"> __<h2>文書情報</h2> __<dl class="documentHistry"> ___<dt id="FIRST-PUBLISHED">First Published</dt> ___<dd>2012-08-10</dd> ___<dt id="LAST-MODIFIED">Last Modified</dt> ___<dd>2012-08-10 12:00:00 (JST)</dd> __</dl> __<address>&copy; ORUKA1951 2012 - 2016 All Rights Reserved mailto:*****</address> _</div> </body> </html>

yuki_tigers
質問者

お礼

うまくいきました。本当にありがとうございます! ご丁寧に説明して下さったおかげです。本当にありがとうございました!

yuki_tigers
質問者

補足

ご丁寧なご回答ありがとうございます。 頂いた内容で確認させて頂き、夜間に改めて報告します。

すると、全ての回答が全文表示されます。
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

a[href="http://yahoo.co.jp"]{ display:block; background-image: url("./images/test.png"); width:36px;height: 136px; position:fixed; top:0px;right: 300px; }

yuki_tigers
質問者

補足

ご回答ありがとうございました。 しかし、教えて頂いた通りに入力しましたが、画像は表示されませんでした。 やはり右から距離をとってのfixed使用は難しいものなのでしょうか? 他に解る方がいましたら、ご回答お願いします。

すると、全ての回答が全文表示されます。

関連するQ&A