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

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

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

HTML5の<canvas>要素用のタグです。CanvasはHTML5から導入された、二次元の図形描写が可能な要素です。

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

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

CSS

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

Q&A

解決済

2回答

494閲覧

見出しの両側の水平線に動き(アニメーション)をつけたい

kp4livateen

総合スコア32

canvas

HTML5の<canvas>要素用のタグです。CanvasはHTML5から導入された、二次元の図形描写が可能な要素です。

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

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

CSS

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

0グッド

0クリップ

投稿2019/03/08 22:15

https://www.flyforit.jp/

上記のサイトの-TOPICS-のように、スクロールした時に「見出しの両側の水平線」がページ両脇から線を引くように伸びてくるアニメーションをつけたくて色々調べたり、試したりしましたがうまくいきません。。。

上記のサイトもspanタグで囲っていたので下記のようにマークアップして水平線を表示しました。

HTML

1<h2 class="title"><span>見出し</span></h2>

CSS

1.title { 2 position: relative; 3 text-align: center; 4} 5.title span { 6 background: #fff; 7 padding: 0 20px; 8 position: relative; 9} 10.title:before { 11 content: ""; 12 display: block; 13 border-top: solid 5px #333; 14 width: 100%; 15 height: 1px; 16 position: absolute; 17 top: 50%; 18}

↓こんな感じでjQueryで動きをつけられたら良いんでしょうけど:beforeにクラスは付けられないんですよね?

CSS

1.title:before { 2 content: ""; 3 display: block; 4 border-top: solid 5px #333; 5 width: 100%; 6 height: 1px; 7 position: absolute; 8 top: 50%; 9 10 transform: translateX(100%); 11 transition: 1s all ease-in; 12} 13.title.is-active { 14 transform: translateX(0); 15}

jQuery

1$(function(){ 2 $(window).scroll(function (){ 3 $('.title:before').each(function(){ 4 var elemPos = $(this).offset().top; 5 var scroll = $(window).scrollTop(); 6 var windowHeight = $(window).height(); 7 if (scroll > elemPos - windowHeight + 500){ 8 $(this).addClass('is-active'); 9 } 10 }); 11 }); 12});

何か__参考サイトだけでも構わない__ので教えていただけると嬉しいです。
よろしくお願いいたします

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

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

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

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

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

guest

回答2

0

ベストアンサー

投稿2019/03/08 23:23

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

kp4livateen

2019/03/09 19:32

ありがとうございます!スゴいですね!! click→scrollに変えた時に挙動が不安定(線が戻ったりする)なのですが、何かを追加で記述すると安定しますでしょうか? また、2回以上使いたい場合はmainタグから何に変更すべきでしょうか? 何度もすみません。。ご回答いただけると嬉しいです。 よろしくお願いいたします
退会済みユーザー

退会済みユーザー

2019/03/09 21:14 編集

> click→scrollに変えた時に挙動が不安定(線が戻ったりする)なのですが、何かを追加で記述すると安定しますでしょうか? はい。いったん調べてわからなければ、この質問を解決済みにして別質問を建ててください。 くわしいかいとうがえられるとおもいます > また、2回以上使いたい場合はmainタグから何に変更すべきでしょうか? 用途によります。具体的な用途と絡めて調べた上でわからなければ別質問を建ててください。
guest

0

これでよいのでは。

CSS

1.title.is-active:before { 2 transform: translateX(0); 3}

投稿2019/03/09 02:20

kei344

総合スコア69400

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

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

kp4livateen

2019/03/09 19:34

ご回答ありがとうございます! ぜひ試してみたいのですが、もう少し詳しく教えていただけないでしょうか? 自分なりに書いてみましたが、うまく動作しませんでした。。 よろしくお願いいたします
kp4livateen

2019/03/12 18:17

わざわざありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問