
お世話になっております。
制作しているWEBで、ページ内リンクを使用しているのですが、いざリンクへ飛ばすとずれが起こり固定ヘッダーの部分と画像が被って困っています。
http://depthcode.com/2011/02/header-fixed.html
上記のサイトを参考にアンカーの位置を調整したところヘッダーに被らず画像もぴったり収まったのですが、こちらの要望としてはリンクで飛んだあとも添付画像のように画像とヘッダーの間を常に空けた状態にしておきたいのです。
どのように設定すれば良いかご教授お願い申し上げます。

No.2ベストアンサー
- 回答日時:
補足いただきましてありがとうございます。
いただいたCSSを元にHTMLを作成してみたのですが、
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<title></title>
<style type="text/css">
<!--
#top {
margin-top: 0px;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 70px;
background: red;
}
#work {
width: 840px;
margin-top: -70px;
margin-right: auto;
margin-left: auto;
padding-top: 70px;
background: green;
}
#contact {
width: 840px;
margin-top: 0px;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 70px;
background: blue;
}
-->
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9. …
<script type="text/javascript">
$(function(){
$('a[href^=#]').click(function(){
var speed = 500;
var href= $(this).attr("href");
var target = $(href == "#" || href == "" ? 'html' : href);
var position = target.offset().top;
$("html, body").animate({scrollTop:position}, speed, "swing");
return false;
});
});
</script>
</head>
<body>
<div id="top">top</div>
<div id="work">work</div>
<div id="contact">contact</div>
<div style="background: pink; height: 2000px;" ><a href="#top">to top</a><br /><a href="#work">to work</a><br /></div>
<div style="background: yellow;" ><a href="#top">to top</a><br /><a href="#work">to work</a></div>
</body>
</html>
このHTMLだと私の環境では、きっちりと各タグの先頭にページ内リンクできました。
(FireFox 最新版、GoogleChrome最新版、IE7~10)
この動作がshiopple様がお考えの挙動と相違無いとすると、
ヘッダーを固定するスクリプトと何か干渉している可能性がありますでしょうか・・・??(・・;)
可能であれば、現状のHTML、Javascript、CSSなどをもう少し仔細にお伝えいただければ、
解決の糸口を示すことができるかもしれません。
ご確認の程、何卒よろしくお願いいたします。
この回答への補足
お礼が遅れてしまいまして大変申し訳ございませんでした。
丁寧なご回答ありがとうございます。
現状としましては、こちらの都合でWEBサイトの制作を急がなくてはならなくなり、ページ内リンクを使わずにひとまずWEBサイトを完成させました。
ご呈示頂いたHTMLをそのまま打ち込んでみたのですが、これは何かおかしいですよね・・・?
http://sampleeeeee.web.fc2.com/sample.html
ヘッダー固定のjsが
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8 … type="text/javascript"></script>
<script type="text/javascript">
jQuery(function($) {
var nav = $('#header'),
offset = nav.offset();
$(window).scroll(function () {
if($(window).scrollTop() > offset.top) {
nav.addClass('fixed');
} else {
nav.removeClass('fixed');
}
});
});
</script>
ヘッダー部分のhtmlは
<div id="header">
<ul class="navi">
<li class="top"><a href="#top">top</a></li>
<li class="work"><a href="#work">work</a></li>
<li class="contact"><a href="#contact">contact</a></li>
</ul>
<br clear="all" />
</div>
CSSは
#header {
background-color: #143259;
height: 80px;
width: 100%;
}
ul.navi {
float: left;
position:relative;
left:50%;
list-style-type: none;
}
.navi li.top a {
display: block;
height: 30px;
width: 100px;
font-family: Arial, Helvetica, sans-serif;
font-size: 18px;
font-weight: bold;
color: #F2EBD5;
letter-spacing: 0.2em;
text-decoration: none;
text-align: center;
margin-top: 24px;
}
.navi li.top a:hover {
border-bottom: solid 5px #D98B84;
}
.fixed {
position: fixed;
top: 0;
width: 100%;
z-index: 10000;
}
となっております。
No.1
- 回答日時:
現状は、こちらの参考サイトの「CSSでアンカー位置をずらす」のように、
margin-topに負の値を設定した状態でしょうか・・・?
であれば、もう少しだけ数値を負の方向に大きく(-100px → -200px)のような形で、
微調整することで位置調整することはできませんでしょうか??
ご参考になれば幸いです。
この回答への補足
ご回答ありがとうございます。
説明しづらいので現在のCSSを記載させていただきます。
#top {
margin-top: 0px;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 70px;
}
#work {
width: 840px;
margin-top: -70px;
margin-right: auto;
margin-left: auto;
padding-top: 70px;
}
#contact {
width: 840px;
margin-top: 0px;
margin-right: auto;
margin-bottom: 0px;
margin-left: auto;
padding-top: 70px;
}
仰られているように負の数値を大きくすると、空間が狭まってしまったので正の方を大きくしています。
現在この状態で、#topと#contactは正常に空間が維持されたままリンクに飛びます。
(ですが、#topもスクロールバーが一番上にある状態で#topのリンクへ飛ぶと画像部分がヘッダーと被ります)
スクロールバーが一番上にある状態で#workに飛ぶと画像が全てヘッダーと被り、
スクロールバーが一番下にある状態で#workに飛ぶとヘッダーに若干画像の上部が被るという状況です。
ちなみに下記のサイトで紹介されているjQueryを使用しています。
http://klutche.org/archives/536/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS リンクバナーのHTMLタグ。画像を変えたり、設置位置を変えるとバナー貼付け側はどう見える? 2 2023/02/01 12:01
- その他(パソコン・スマホ・電化製品) Webページ印刷時にヘッダー・フッターをつけたい 1 2022/04/25 21:35
- HTML・CSS 画像が分割されて切り替わる、ループアニメーションが作りたい 7 2023/05/27 17:12
- その他(ブログ) シーサーブログのタイトル文字位置とブログ説明文字位置の変更方法 2 2022/09/22 20:55
- WordPress(ワードプレス) WordPressのメニューについて 1 2022/10/22 01:10
- Excel(エクセル) Excel2019 マクロを使用し画像を貼り付けした際のリンク切れについて 2 2022/11/15 16:14
- その他(ネットショッピング・通販・ECサイト) 画像の製品が欲しいのですが、 こちらの型番ならびに販売しているショップなどご存知の方がおりましたらご 2 2022/03/24 10:08
- その他(ブログ) なぜ、ホームページが削除されても、そのホームページ上の画像のリンク先がリンク切れになる場合 5 2023/07/15 10:24
- その他(クラウドサービス・オンラインストレージ) firestorage_androidスマホでダウンロードできない 1 2022/10/25 08:18
- HTML・CSS svgクリップパスの応用コーディング方法 2 2022/04/09 09:07
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
-
ピンとくる人とこない人の違いは?直感を鍛える方法を心理コンサルタントに聞いた!
根拠はないがなんとなくそう感じる……。そんな「直感がした」という経験がある人は少なくないだろう。ただ直感は目には見えず、具体的な説明が難しいこともあるため、その正体は理解しにくい。「教えて!goo」にも「...
-
中古物件転売時の節税対策にメス?不動産投資家は戦々恐々?元国税が解説
不動産の取引において、土地と建物を一括で売買する場合、土地に消費税はかからないが、建物には消費税がかかる。これを利用して、例えば土地と建物を合計1億円で売る場合、土地の値段を9999万9999円にし、建物を1円...
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
画像イメージの上下左右、欲し...
-
余分な縦スクロールバーが出て...
-
CSSがなぜかfont-sizeだけ効か...
-
HTMLで一部だけスクロールする...
-
form input テキストを上下中央...
-
widthやheightの数値に単位(px...
-
CSSでボックスのheightが0になる
-
【HTML&CSS】フッター下部の余...
-
divで囲まれたpaddingの指定を...
-
div内に外部のurlを表示させたい
-
css初心者 フレックスボックス...
-
div領域をウインドウサイズに合...
-
CSSでborderの指定を解除する記...
-
CSSで3分割した背景画像を配置...
-
テーブルのセル間に余白が空い...
-
IEとFireFoxでの指定位置のズレ...
-
float を使うと隙間ができる
-
テキストボックスの高さを可変...
-
表示倍率を変えるとレイアウト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
form input テキストを上下中央...
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
CSSがなぜかfont-sizeだけ効か...
-
余分な縦スクロールバーが出て...
-
HTMLで文字が重なって表示されます
-
【CSS】ヘッダーの高さが不明の...
-
css初心者 フレックスボックス...
-
スクロールボックスを中央に配...
-
表示倍率を変えるとレイアウト...
-
footer を横幅いっぱいに広げる...
-
CSSでborderの指定を解除する記...
-
CSSで背景画像を一番下にもって...
-
背景が下まで表示されないんです。
-
<div>と<div>の間の10px程の...
-
CSS(0の単位)について
-
CSSでボックスのheightが0になる
-
CSSの角丸での質問です。 今、C...
-
div内に外部のurlを表示させたい
おすすめ情報