質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

onclick

onclickとはユーザーのクリック処理を指します。これは"onmousedown"(押下)と"onmouseup"(押上)の二つの事象の組み合わせです

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

1495閲覧

hrefを設定しているaタグの画面スクロールを取り消したい

takemou

総合スコア4

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

onclick

onclickとはユーザーのクリック処理を指します。これは"onmousedown"(押下)と"onmouseup"(押上)の二つの事象の組み合わせです

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2020/05/14 04:47

編集2020/05/14 05:09

掲題の通りです。

試したこと
それぞれのaタグに以下を適用しました。

<a href="#s1 javascript:void(0)" onClick="hogeFunction();return false;" <a href="javascript:void(#s1)" onClick="hogeFunction();return false;" <a href="#s1" onClick="hogeFunction();return false;"

上記に加え、のfalseの;抜きなどのパターンなども試しました。
(もちろん文法的に間違っているものもありますが、試せることはしてみました)

以下実際のコード

(HTML) <div class="CSSgal"> <!-- Don't wrap targets in parent --> <s id="s1"></s> <s id="s2"></s> <s id="s3"></s> <s id="s4"></s> <div class="slider"> <div style="background:#5b8;"> </div> <div style="background:#85b;"> </div> <div style="background:#e95;"> </div> <div style="background:#e59;"> </div> </div> <div class="prevNext"> <div><a href="#s4" ></a><a href="#s2"></a></div> <div><a href="#s1" ></a><a href="#s3" ></a></div> <div><a href="#s2" ></a><a href="#s4"></a></div> <div><a href="#s3" ></a><a href="#s1"></a></div> </div> <div class="bullets"> <a href="#s1" ></a> <a href="#s2"></a> <a href="#s3"></a> <a href="#s4"></a> </div> </div>
(css) .CSSgal { position: relative; overflow: hidden; height: 300px; /* Or set a fixed height */ width: 90%; margin: 0 auto; } /* SLIDER */ .CSSgal .slider { height: 100%; white-space: nowrap; font-size: 0; transition: 0.8s; } /* SLIDES */ .CSSgal .slider > * { font-size: 1rem; display: inline-block; white-space: normal; vertical-align: top; height: 100%; width: 100%; background: none 50% no-repeat; background-size: cover; } /* PREV/NEXT, CONTAINERS & ANCHORS */ .CSSgal .prevNext { position: absolute; z-index: 1; top: 50%; width: 100%; height: 0; } .CSSgal .prevNext > div+div { visibility: hidden; /* Hide all but first P/N container */ } .CSSgal .prevNext a { background: #fff; position: absolute; width: 60px; height: 60px; line-height: 60px; /* If you want to place numbers */ text-align: center; opacity: 0.7; -webkit-transition: 0.3s; transition: 0.3s; -webkit-transform: translateY(-50%); transform: translateY(-50%); left: 0; } .CSSgal .prevNext a:hover { opacity: 1; } .CSSgal .prevNext a+a { left: auto; right: 0; } /* NAVIGATION */ .CSSgal .bullets { position: absolute; z-index: 2; bottom: 0; padding: 10px 0; width: 100%; text-align: center; } .CSSgal .bullets > a { display: inline-block; width: 30px; height: 30px; line-height: 30px; text-decoration: none; text-align: center; background: rgba(255, 255, 255, 1); -webkit-transition: 0.3s; transition: 0.3s; } .CSSgal .bullets > a+a { background: rgba(255, 255, 255, 0.5); /* Dim all but first */ } .CSSgal .bullets > a:hover { background: rgba(255, 255, 255, 0.7) !important; } /* NAVIGATION BUTTONS */ /* ALL: */ .CSSgal >s:target ~ .bullets >* { background: rgba(255, 255, 255, 0.5);} /* ACTIVE */ #s1:target ~ .bullets >*:nth-child(1) {background: rgba(255, 255, 255, 1);} #s2:target ~ .bullets >*:nth-child(2) {background: rgba(255, 255, 255, 1);} #s3:target ~ .bullets >*:nth-child(3) {background: rgba(255, 255, 255, 1);} #s4:target ~ .bullets >*:nth-child(4) {background: rgba(255, 255, 255, 1);} /* More slides? Add here more rules */ /* PREV/NEXT CONTAINERS VISIBILITY */ /* ALL: */ .CSSgal >s:target ~ .prevNext >* { visibility: hidden;} /* ACTIVE: */ #s1:target ~ .prevNext >*:nth-child(1) {visibility: visible;} #s2:target ~ .prevNext >*:nth-child(2) {visibility: visible;} #s3:target ~ .prevNext >*:nth-child(3) {visibility: visible;} #s4:target ~ .prevNext >*:nth-child(4) {visibility: visible;} /* More slides? Add here more rules */ /* SLIDER ANIMATION POSITIONS */ #s1:target ~ .slider {transform: translateX( 0%); -webkit-transform: translateX( 0%);} #s2:target ~ .slider {transform: translateX(-100%); -webkit-transform: translateX(-100%);} #s3:target ~ .slider {transform: translateX(-200%); -webkit-transform: translateX(-200%);} #s4:target ~ .slider {transform: translateX(-300%); -webkit-transform: translateX(-300%);} /* More slides? Add here more rules */ /* YOU'RE THE DESIGNER! ____________________ All above was mainly to get it working :) CSSgal CUSTOM STYLES / OVERRIDES HERE: */ .CSSgal{ color: #fff; text-align: center; } .CSSgal .slider h2 { margin-top: 40vh; font-weight: 200; letter-spacing: -0.06em; word-spacing: 0.2em; font-size: 3em; } .CSSgal a { border-radius: 50%; margin: 0 3px; color: rgba(0,0,0,0.8); text-decoration: none; } .background { display: flex; justify-content: center; align-items: center; flex-direction: column; } .samples { height: 200px; width: auto; }

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2020/05/14 04:50

JavaScriptも提示してください。
takemou

2020/05/14 04:56

こちらはjavascriptなしでも動くというスニペットでしたので、javascriptは特に設定していません。
kei344

2020/05/14 04:57

「hogeFunction();」は何のための指定でしょうか。
kei344

2020/05/14 05:05

問題のあるページだとは思いますが、それは置いておいて、そもそも提示のCSSは「CSSだけでスライダーを作る」系のものだとおもいます。それであれば「ページ移動してしまう」ことのほうが問題では? 通常「<a href="#s1" ></a>」と書いた場合はページ内のs1というidをつけたところにスクロールされます。それが別のページに移動してしまうのでしょうか。
takemou

2020/05/14 05:09

ご指摘ありがとうございます。 本タイトルの画面推移とは、aタグを押したことで、仰る通りスクロールが発生するということでした。 つまり、このスクロールをせず、スライドの変更だけを実行したい。ということが目標です。 タイトルを変更しておきます。
maisumakun

2020/05/14 05:09

えっと、そのリンクをクリックしたら「何を起こさせたい」のですか?
takemou

2020/05/14 05:10

maisumakun様、入れ違いになってしまいましたが、 画面のスクロールをせず、スライドの変更だけを実行したい。ということが目標です。
guest

回答2

0

ベストアンサー

画面のスクロールをせず、スライドの変更だけを実行したい。ということが目標です。

おそらくこのままでは無理です。

当該のコードでは、#s1:targetというように、その位置に移動することをタブの切替に利用しています。つまり「移動を止める」こと=「タブ切り替えを止めること」になってしまいます。

:targetに頼らない形に、抜本的に作り直すよりありません。

投稿2020/05/14 05:14

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takemou

2020/05/14 05:19

やはりこのままでは無理ですか…。 ありがとうございました。
guest

0

aの遷移をとめたいならこう

HTML

1<a href="#s1" onclick="return false;">s1</a>

投稿2020/05/14 05:17

yambejp

総合スコア116734

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問