前提・実現したいこと
ローディングが完了したら中央から円でマスクを広げて
ローディング画面を消すという動きを付けたいのですが、
CSSの「clip-path」では内側をくりぬく方法は私が捜したところ
見当たらなかったのですが、あれはJavascriptなどを使用しているのでしょうか?
教えていただけると助かります。
回答1件
あなたの回答
tips
プレビュー
CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。
JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。
jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。
HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。
CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。
CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。
JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。
jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。
HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。
CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。
0グッド
0クリップ
投稿2018/02/06 05:27
編集2018/02/06 05:56ローディングが完了したら中央から円でマスクを広げて
ローディング画面を消すという動きを付けたいのですが、
CSSの「clip-path」では内側をくりぬく方法は私が捜したところ
見当たらなかったのですが、あれはJavascriptなどを使用しているのでしょうか?
教えていただけると助かります。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答1件
0
ベストアンサー
SVGのclipPath
要素を使えば, 内側を中身をくり抜くことが可能です. また同等の処理はmask
要素を使っても出来ます.
HTML
1<div id="clipped">clipPath要素を使ったくり抜き</div> 2<div id="masked">mask要素を使ったくり抜き</div> 3<svg width="0" height="0"> 4 <defs> 5 <!--clip-pathを用いる場合--> 6 <clipPath id="cp"> 7 <path d="M0,0h200v200h-200zM100,100m-50,0a50,50 0 0 0 100,0 50,50 0 0 0-100 0z"/> 8 </clipPath> 9 <!--maskを用いる場合--> 10 <mask id="m"> 11 <rect width="200" height="200" fill="white"/> 12 <circle cx="100" cy="100" r="50" fill="black"/> 13 </mask> 14 </defs> 15</svg>
CSS
1#clipped,#masked{ 2 width: 200px; 3 height: 200px; 4} 5#clipped{ 6 background-color: green; 7 clip-path: url(#cp); 8} 9#masked{ 10 background-color: orange; 11 mask: url(#m); 12}
動作例
http://jsdo.it/defghi1977/K0ah
あとは, path
要素のd
属性(もしくはcircle
要素のr
属性)をJavaScriptを用いてアニメーション化(50
の部分を時系列的に変化させる)すればよいでしょう.
投稿2018/02/06 06:58
総合スコア4756
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/09 02:48