サンプル CSS web ページを開くと同時にピエロの玉乗りが動き出すアニメーションを作ってみましょう AnimeAuto の説明 HTML の記述 (AnimeAuto.html) ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます <!DOCT

Similar documents
overflow プロパティの指定は 親ボックスのスタイルに記述します overflow プロパティは position プロパティ (position: static; 以外 ) の指定がされていなと適用されません ボックスの外にはみ出た部分を表示させたくないときに hidden を使用します サ

transform: translatex(x 方向の移動距離 ) transform: translatey(y 方向の移動距離 ) transform: translate(x 方向の移動距離, Y 方向の移動距離 ) transform: translate 関数は 移動する位置ではなく 移動

transform: skewx(x 軸の傾斜角度 ) transform: skewy(y 軸の傾斜角度 ) transform: skew(x 軸の傾斜角度, Y 軸の傾斜角度 ) skewx( ) は X 軸に沿って傾斜します skewy( ) は Y 軸に沿って傾斜します skew( ) は

ように記述をします div1 要素 span 要素 2 個 div3 要素 span 要素 4 個 div5 要素 span 要素 1 個 div7 要素 span 要素 2 個 div2 要素 span 要素 1 個 div4 要素 span 要素 2 個 div6 要素 span 要素 2 個

1222-B Transform Using Class And Tag (classセレクタと要素型セレクタ(Tag)を使用してスタイルを適用する)

Color Change

1つ目は MASK という文字の下に楕円形のマスクイメージで その文字と楕円形の中に複数画像のスライドを表示するので id 属性 slide の div 要素の中に画像を5つ (images/dsc00203l.jpg images/dsc00027l.jpg images/dsc00092l.jp

<!DOCTYPE html> <html> <head> <title>titleanime01</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="titleanime01.css"> </hea

leaf2-h leaf2-v leaf2 images/leaf2.png leaf3-h leaf3-v leaf3 images/leaf3.png leaf4-h leaf4-v leaf4 images/leaf4.png leaf5-h leaf5-v leaf5 images/leaf

動させることはできません 少し工夫が必要になります 元の画像を移動すれば反射画像 も一緒についてきますが 反射画像だけが移動するように見せたいので 元の画像の上に は黒色のボックスを覆い被せます ReflectAnime1 の説明 HTML の記述 (ReflectAnime1.html) id 属

1222-A Transform Function Order (trsn

MorphAndTextAnime の説明 HTML の記述 (MorphAndTextAnime.html) id 属性 stage の div 要素を作り その中に div 要素でボックスを記述します id 属性 div1 の div 要素を記述し 中につぎの記述をします id 属性 div2

<!DOCTYPE html> <html> <head> <title>clipanime1</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="clipanime1.css"> </head> <

サンプル CSS OutlineAnimation.html の説明 HTML の記述 (OutlineAnimation.html) id 属性 stage の div 要素を作り その中に div 要素でボックスを記述します id 属性 div1 の div 要素を記述し 中にテキストで Out

<!DOCTYPE html> <html> <head> <title>spaceorbitanime</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="spaceorbitanime.css">

画像 images/ SpaceShuttle.png を指定します <!DOCTYPE html> <html> <head> <title>circleanime1</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/

</div> </div> </body> </html> CSS の記述 (3DCubeAnime1.css) #stage ステージのスタイルを指定します 背景色を黒色で指定します 画像に軽く遠近感を出すために perspective: 1000px; と指定し perspective-orig

( 注 )Safari (webkit 系ブラウザ ) と Chrome(webkit にも対応 ) は テキストの輪郭や色を -webkit-text-stroke-width -webkit-text-stroke-color -webkit-text-fill-color のプロパティで描くこ

MovingTextsAnime1 の説明 HTML の記述 (MovingTextsAnime1.html) id 属性 stage の div 要素 ( アニメーションが動くステージ ) を作り その中にボックスやテキストを記述します id 属性 div1 のdiv 要素から id 属性 div

Color Change

大メニューをマウスカーソルで hover すると 半透明の小メニューが上から伸びてきます 小メニューを hover すると メニューの背景色とテキストの色が変わります NaviMenuAnime01 の説明 HTML の記述 (NaviMenuAnime01.html) id 属性 menu-box

画像全体を左右反転させると 下の画像 ( 黄緑色の外枠に白い桜 ) は backface-visibility: visible; と指定してあるので裏側が表示されます 上の画像 ( 水色の外枠に紅葉 ) は backface-visibility: hidden; と指定してあるので裏側が表示され

トリガーをわかり易くする方法

子ボックスや孫ボックスなどに position: absolute; と指定すると それぞれ親ボックスに対する絶対位置で配置できるので親ボックスの上に複数の子ボックスや孫ボックスを重ねて配置することができます トランジションやアニメーションを作成するときに非常に便利なので覚えておきましょう top

1221 Transitionの指定項目

背景の線形グラデーションをアニメーションのように見せる方法は 前章の #div4 ボックスと同じ方法です ( 注 )Safari (webkit 系ブラウザ ) と Chrome(Webkit にも対応 ) は テキストの輪郭や色を -webkit-text-stroke-width -webkit

1222-A Transform Function Order (trsn

Border Width と記述します id 属性 div3 の div 要素を記述し 中にテキストで Border Radius と記述します id 属性 div4 の div 要素を記述し 中に span 要素を1つ記述しその中にテキストで Border All<br />(Color,Widt

をさせる ) ような場合に それぞれの要素に id 属性で id 名を指定している場合には CSS の id セレクタごとにアニメーションでプロパティを指定する必要があります class セレクタ.class 名 { プロパティ名 : 値 ; HTML 文書で class 属性 ( class="

サンプル CSS1 入力フィールドの輪郭 (outline) のトランジション 入力フィールドをクリックすると変化します InputOutlineTransition の説明 HTML の記述 (InputOutlineTransition.html) id 属性 field の div 要素を作り

ボタンのトランジション 1 トランジションを利用して ボタンを作ってみましょう ボタンを工夫することでひときわ光る web ページにすることができます もう Illustrator や Photoshop でボタンの画像を作る必要はありません JavaScript でスクリプトを書く必

1222-A Transform Function Order (trsn

1221 Transitionの指定項目

メニューのトランジション 1 (text-overflow) トランジションを利用して 面白い個性的なメニューを作ってみましょう web ページもぐっと引き立つでしょう ここで紹介するメニューも Illustrator や Photoshop でメニューの画像を作る必要はありません J

images/dsc00092s.jpg images/dsc00131s.jpg images/dsc00149s.jpg images/dsc00203s.jpg <!DOCTYPE html> <html> <head> <title>roundphotogallery</title> <me

padding( パディング ) padding プロパティでボックスの内側の余白を指定します この部分の内側には背景 ( 背景色や背景画像 ) を表示できます border( ボーダー ) border プロパティでボックスの境界線を指定します ボーダーには色 太さ 線の種類を指定できます 画像で

Microsoft PowerPoint - CSS(Cascading Style Sheets)の基本.pptx

スタイルシートでデザインを整えよう

Webデザイン論

PowerPoint プレゼンテーション

Microsoft Word - 教材WebページのHTML5及びCSS3の解説

World Wide Web =WWW Web ipad Web Web HTML hyper text markup language CSS cascading style sheet Web Web HTML CSS HTML

IBM Business Process Manager CSS による Coach レイアウト制御ガイド WebSphere 2014 IBM Corporation

6 2 s µ µµµ µµµµ µ µ h µs µ µµµµ µ µ µ s mµµµµµ µµµ µµ µ u m µmµµµµµ µµ µ µ µ µ µ µ µ µ s 1

Web 設計入門

目次 はじめに... 1 CSS?... 3 CSS の例... 4 CSS の基本の形... 5 HTML で CSS を読み込む... 7 <link> タグを置く ( ファイルを読み込む )... 9 <style> タグを置く ( スタイルを直接埋め込む ) セレクタ... 11

JavaScript 演習 2 1

Moshimo Challenge Report

SVG資料第6回目(その3) SVGとHTMLの間でデータを交換する

Web09

Web

( )

ホームページ制作 基礎編 (HTML5 CSS3 コーディング )

_勉強会_丸山さつき_v3

■新聞記事

PowerPoint Presentation

経営論集2011_07_小松先生.indd

超簡単にWebページを作成

EC 千葉のホームページで使用している CSS CSSスタイルシート ( 外部記載 ) /* == 標示枠背景に壁紙設置 ( 全画面共通 )======= */ body { background-ima

JIS Web Web JIS JIS 5.1.a 5.1.b 5.2.a 5.2.b 5.2.c 5.2.d 5.2.e 5.2.f 5.2.g 5.3.a 5.3.b 5.3.c 5.3.d 5.3.e 5.3.f 5.3.g 5.3.h 5.3.i 5.4.a 5.4.b 5.4.c 5.4.

~/WWW-local/compIID (WWW IID ) $ mkdir WWW-local $ cd WWW-local $ mkdir compiid 3. Emacs index.html n (a) $ cd ~/WWW/compIID

要素にフォーカスが当たったときは 例えば以下のように記述する input:focus{} 疑似要素 p:first-lin{ } 一行目だけ p:first-letter{} 最初の文字だけ要素の前や後に付け加えるには 以下のように記述する p:before{content:" 記号や文字 ";}

Web データ管理 JavaScript (3) (4 章 ) 2011/12/21( 水 ) 湘南工科大学講義資料 Web データ管理 (2011) 阿倍 1/18

(3) 本文を書く 実際にページを開いたときに表示される本文を書いてみましょう から の間に書きます <html > <head > <title > 武のホームページ </title > </head > </html > (4) ページを保存する ここで一度ページを保存してみましょう テキストエ

ch31.dvi

id, クラスで指定 (#id 名,.class 名 ) 4. 様々なセレクタ a,b :a と b を指定 a b :a の下の階層の b を指定 a>b :a の直下の b を指定 a+b :a の次の b を指定 ab :a かつ b を指定 5. 属性セレクタ a[b] :a タグ内で b

about かみのごうや たいち 大阪府出身 東京都在中 28歳 うお座 O型 ゾウと写真が好き 2xup.org を管理

合宿事前講座 Web 開発の基本編その 2 情報研究会モブ 薗田海樹 The. H.30 情報研究会 1

<4D F736F F D A957A A A8FEE95F18F88979D DEC90AC E646F63>

Web 設計入門

6 2 1

演習室の PC のハードディスクには演習で作成したデータは保管できません 各 PC の ネットワーク接続 ショートカットからメディア情報センターのサーバーにアクセスしてください 演習名 使用するフォルダ 演習 1 Z: Web データ管理 演習 1 演習 2 Z: Web データ管

インターネット社会の発展

Microsoft Word - manual.doc

ブロックの 1 文字目のを変更する セレクタ : first-letter { 1 文字目のを指定するフォントや文字色 背景色 枠線などの ブロックの 1 文字目を字下げする text-indent: 字下げ幅段落の1 文字目の字下げ幅を指定する em( 標準 1em) px( ピクセル ) pt(

27短01研01斉藤.indd

JavaScript演習

PowerPoint プレゼンテーション

2

Network Computing の基礎

フォームとインナー HTML を使って動的にページ内の文章を変更しよう 問題 1. つぎの指示と画面を参考に HTML を組みなさい 仕様 テキストボックスに任意の文字を入力し [ コメント ] ボタンをクリックすると 下部の文章がテキストボックスの内容に置き換わる フォーム名 : f1 テキストボ


extChatText.pdf

PowerPoint Presentation

はじめに 本書の目的は 制作の効率化 クオリティの向上 各作業者間のスタイルの統一を 図る目安になることで 常にブラッシュアップを繰り返し 現時点での最適解の共 有に活用するものである 目次 基本仕様 ファイル ディレクトリ構成 画像ファイル 対応ブラウザ 品質管理 (X)HTML 制作 文字コード

Web プログラミング 1 JavaScript (3) (4 章 ) 2013/7/3( 水 ) 日時 講義内容 4/10 ( 水 ) ガイダンス Web (1 章 ) 4/17 ( 水 ) HTML+CSS (1) (2 章 ) 4/24 ( 水 ) HTML+CSS (2) (2 章 ) 5/

! "#$%&'()*+,-. STUV WXYZ[\]^_`abcdefghijklmno pqrstuvwxyz{ }~ ƒ ˆ Š Œ Ž š œ žÿ ª«±²³ µ ¹º»¼½¾ ÀÁÂÃÄ ÅÆÇÈÉÊËÌÍÎÏÐ

1


css.pdf

第6回 CSS入門(つづき)

【お試し版】Web制作者のためのCSS設計の教科書(非売品)

目次 概要... 2 フォームレイアウトデザイナー機能の設定... 3 設定したフォームレイアウトデザイナーの確認...14 その他スタイルの設定...15 フォームレイアウトデザイナーをエクスポート...17 フォームレイアウトデザイナーをインポート...18 インポート時の制限事項...19 リ

JavaScript カスタマイズ入門 kintone university アプリデザイナープラス JavaScript カスタマイズ入門編演習問題回答 演習問題 第 2 章サンプルで試そう 1 cybozu.com developer network の サンプルで試そう ( 以下 サンプル と

触覚マウスライブラリを使った 触覚付き Web ページの作り方 ver 富士ゼロックス株式会社 -1-

第2回 Web文書

Webデザイン論

extCountdown.pdf

Microsoft Word - JavaScript基礎講座Web Speech API.docx

コンピュータ基礎実習 ( 上級 ) 第 13 週の例では <h1> タグが対象であることを意味します セレクタを変えることで見栄えを様々な対象に設定できます プロパティ (property) は設定する見栄え ( スタイル ) の種類のことです 値はプロパティに対する具体的な設定値です この例では文

Transcription:

1320 Animation のトリガー ( 開始させるきっかけ ) の方法 animation を開始させるきっかけは 次の3つの方法があります 1web ページが表示されるのと同時に開始させる方法 2マウスでクリック (click) して開始させる方法 3マウスカーソルを乗せている (hover) 間だけ動かす方法アニメーションを動かすためにはアニメーション名 (animation-name プロパティの値 ) とタイムライン (@keyframes) の名称を同じにする必要があります この仕様を応用して 上記のトリガーによりアニメーション名 (animation-name プロパティの値 ) にタイムライン (@keyframes) の名称をセットすることでアニメーションを開始させます web ページが表示されるのと同時に開始させる方法 animation を web ページが表示されるのと同時に開始させる方法は通常の指定方法で もっとも頻繁に使用されます アニメーション名 (animation-name プロパティの値 ) とタイムライン (@keyframes) の名称を同じにしておくことでアニメーションが自動的に開始されます ( ここでは animation の指定は animation ショートハンドプロパティで指定しています ) HTML の記述 <img id="image1" src="images/animeimage.png"> CSS の記述 #image1 { animation anime1 5s ease-in-out 0s infinite alternate; -webkit-animation: anime1 5s ease-in-out 0s infinite alternate; @keyframes anime1 { 0% { 100% { transform: translatex(480px); @-webkit-keyframes anime1 { 0% { 100% { -webkit-transform: translatex(480px); 1

サンプル CSS web ページを開くと同時にピエロの玉乗りが動き出すアニメーションを作ってみましょう AnimeAuto の説明 HTML の記述 (AnimeAuto.html) ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます <!DOCTYPE html> <html> <head> <title>animeauto</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="animeauto.css"> </head> <body> <p> Animation のトリガー ( 自動 ) </p> <div id="stage"> <img id="pierrot" src="images/pierrot.png" alt="pierrot"> <img id="ball" src="images/colorwheel.png" alt="color Wheel"> </div> </body> </html> CSS の記述 (AnimeAuto.css) ピエロの玉乗りアニメーションが動くステージを指定します #stage { width: 600px; height: 250px; background-color: #FFFFFF; border: solid 1px #000000; position: relative; ピエロの画像と玉の画像は それぞれ別のアニメーションとして指定します アニメーシ 2

ョンは animation ショートハンドプロパティで指定しています #pierrot 画像については アニメーション名を pierrotanime 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate ( 往復 ) と指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 20px; left: 15px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります #pierrot { top: 20px; left: 15px; width: 88px; height: 117px; animation: pierrotanime 5s ease-in-out 0s infinite alternate; -webkit-animation: pierrotanime 5s ease-in-out 0s infinite alternate; @keyframes pierrotanime { 0% { 100% { transform: translatex(480px); @-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については アニメーション名を ballanime 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 132px; left: 12px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 132px; left: 12px; width: 100px; height: 100px; animation: ballanime 5s ease-in-out 0s infinite alternate; -webkit-animation: ballanime 5s ease-in-out 0s infinite alternate; 3

@keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); @-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); マウスでクリック (click) して開始させる方法 マウスのクリックをトリガーとしてアニメーションを開始させることができます ここで は web ページに表示されたボタンをクリックするとアニメーションが動くようにします HTML の記述 id 属性で id 名 button を付けた div 要素には ボックスをマウスでクリックしたときにアニメーションが始まるように <div> タグに onclick="classname='startanime'" と記述します ( ここではクラス名 (classname) を 'startanime' と指定しています ) onclick=" classname=' startanime ' '' onclick は クリックした時 という意味で この後に =" " で クリックした時に実行する内容を記述します classname はクラス名の意味で この後に =' ' で 実際のクラス名を記述します " は onclick で使っているので ' を使います CSS に記述するクラス名 startanime を記述します ここだけ JavaScript を使用しています onclick の場合はマウスのクリックがトリガーとして1 回だけ機能します 2 回目以降のクリックは無効になります web ページが再読み込みされて表示されると再度マウスのクリックがトリガーとして有効になります <div id="button" onclick="classname='startaanime'">click <img id="image1" src="images/animeimage.png"> </div> 4

CSS の記述 #button の div 要素は 通常の指定をします #button { top: 10px; left: 460px; width: 120px; height: 50px; border: solid 1px black; border-radius: 10px; background-color: red; text-align: center; cursor: default; #image1 画像には animation-name プロパティの値を指定しません animation-name プロ パティの値がなければ アニメーションは実行されません タイムライン (@keyframes) の名称は anime1 と指定しておきます #image1 { animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes anime1 { 0% { 100% { transform: translatex(480px); @-webkit-keyframes anime1 { 0% { 100% { -webkit-transform: translatex(480px); #button 要素がクリックされたときの動作を指定します #button の後に class セレクタ. +class 名.startAnime をスペースを空けずに続けて記述します その後にスペースを空けて #image1 を指定します 動作内容は #image1 画像の animation-name プロパティの値を anime1 に指定しています #button.startanime #image1 { animation-name: anime1; -webkit-animation-name: anime1; これによって #button 要素がクリックされると #image1 画像の animation プロパティの 指定に animation-name の値として anime1 が与えられて アニメーションが開始されます 5

onclick の代わりに 変化させる要素の上にマウスカーソルを乗せたとき (mouseover) 変 化させる要素の上でマウスボタンを押したとき (mousedown) 変化させる要素の上でマウ スボタンを上げたとき (mouseup) を使用することもできます サンプル CSS ボタンをクリックするとピエロの玉乗りが動き出すアニメーションを作ってみましょう AnimeTrigger1 の説明 HTML の記述 (AnimeTrigger1.html) div 要素に button という id を付けて onclick="classname='startamine'" を記述し 内容としてテキスト click ピエロの画像 玉の画像を記述します ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます <!DOCTYPE html> <html> <head> <title>animetrigger1</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="animetrigger1.css"> </head> <body> <p> Animation のトリガー </p> <div id="stage"> <div id="button" onclick="classname='startamine'"><font class="font1">click</font> <img id="pierrot" src="images/pierrot.png" alt="pierrot"> <img id="ball" src="images/colorwheel.png" alt="color Wheel"> </div> </div> </body> </html> CSS の記述 (AnimeTrigger1.css) ピエロの玉乗りアニメーションが動くステージを指定します 6

#stage { width: 600px; height: 250px; background-color: #FFFFFF; border: solid 1px #000000; position: relative; クリックするボタン #button を指定します 位置は top: 10px; left: 460px;(#stage 要素 の左上端を基準とする位置 ) で指定します #button { top: 10px; left: 460px; width: 120px; height: 50px; border: solid 1px black; border-radius: 10px; background-color: red; text-align: center; cursor: default; ピエロの画像と玉の画像は それぞれ別のアニメーションとして指定します アニメーションは animation ショートハンドプロパティで指定しています #pierrot 画像については 位置を top: 10px; left: -445px;(#button 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 10px; left: -445px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります #pierrot { top: 10px; left: -445px; width: 88px; height: 117px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes pierrotanime { 0% { 100% { transform: translatex(480px); 7

@-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については 位置を top: 122px; left: -448px;(#button 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 122px; left: -448px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 122px; left: -448px; width: 100px; height: 100px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); @-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); #button 要素がクリックされたときのボタンの変化を指定します #button 要素とテキスト を透明にして見えないようにしています #button.startamine { border: solid 1px rgba( 0, 0, 0, 0 ); background-color: rgba( 0, 0, 0, 0 ); #button.startamine.font1 { color: rgba( 0, 0, 0, 0 ); 8

#button 要素がクリックされたときの #pierrot 画像と #ball 画像の変化を指定します 内容 は #pierrot 画像の animation-name プロパティの値を pierrotanime に指定し #ball 画像 の animation-name プロパティの値を ballanime に指定しています #button.startamine #pierrot { animation-name: pierrotanime; -webkit-animation-name: pierrotanime; #button.startamine #ball { animation-name: ballanime; -webkit-animation-name: ballanime; 最後にテキストのフォントを指定しています.font1 { color: black; font: bold 28px "MS P ゴシック ", Osaka, " ヒラギノ角ゴ Pro", Verdana; line-height: 50px; マウスカーソルを乗せている (hover) 間だけ動かす方法 マウスカーソルを乗せている間だけをアニメーションを動かすことができます ここでは web ページに表示されたボタンを hover している間だけアニメーションが動くようにします HTML の記述 id 属性で id 名 button を付けた div 要素は ボックスの上にマウスを乗せている (hover) 間だけアニメーションが動くようにするので CSS の方に #button:hover の記述だけあれば HTML の <div> タグには id 名以外の記述は必要ありません hover の場合はマウスカーソルが乗るとトリガーとして機能します マウスカーソルが乗っている間はアニメーションが動きますが マウスカーソルが外れると元に戻ります <div id="button">hover <img id="image1" src="images/animeimage.png"> </div> 9

CSS の記述 #button の div 要素は 通常の指定をします #button { top: 10px; left: 460px; width: 120px; height: 50px; border: solid 1px black; border-radius: 10px; background-color: red; text-align: center; cursor: default; #image1 画像には animation-name プロパティの値を指定しません animation-name プロ パティの値がなければ アニメーションは実行されません タイムライン (@keyframes) の名称は anime1 と指定しておきます #image1 { animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes anime1 { 0% { 100% { transform: translatex(480px); @-webkit-keyframes anime1 { 0% { 100% { -webkit-transform: translatex(480px); #button 要素にマウスカーソルが乗っているときの動作を指定します #button の後に擬似クラス :hover をスペースを空けずに続けて記述します その後にスペースを空けて #image1 を指定します 動作内容は #image1 画像の animation-name プロパティの値を anime1 に指定しています #button:hover #image1 { animation-name: anime1; -webkit-animation-name: anime1; これによって #button 要素にマウスカーソルが乗ると #image1 画像の animation プロパ 10

ティの指定に animation-name の値として anime1 が与えられ アニメーションが開始され ます サンプル CSS ボタンを hover するとピエロの玉乗りが動き出すアニメーションを作ってみましょう AnimeTrigger3 の説明 HTML の記述 (AnimeTrigger3.html) div 要素に button という id を付けて 内容としてテキスト click ピエロの画像 玉の画像を記述します ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます <!DOCTYPE html> <html> <head> <title>animetrigger3</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="animetrigger3.css"> </head> <body> <p> Animation のトリガー </p> <div id="stage"> <div id="button"><font class="font1">hover</font> <img id="pierrot" src="images/pierrot.png" alt="pierrot"> <img id="ball" src="images/colorwheel.png" alt="color Wheel"> </div> </div> </body> </html> CSS の記述 (AnimeTrigger3.css) ピエロの玉乗りアニメーションが動くステージを指定します 11

#stage { width: 600px; height: 250px; background-color: #FFFFFF; border: solid 1px #000000; position: relative; hover するボタン #button を指定します 位置は top: 10px; left: 460px;(#stage 要素の 左上端を基準とする位置 ) で指定します #button { top: 10px; left: 460px; width: 120px; height: 50px; border: solid 1px black; border-radius: 10px; background-color: red; text-align: center; cursor: default; ピエロの画像と玉の画像は それぞれ別のアニメーションとして指定します アニメーションは animation ショートハンドプロパティで指定しています #pierrot 画像については 位置を top: 10px; left: -445px;(#button 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 10px; left: -445px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります #pierrot { top: 10px; left: -445px; width: 88px; height: 117px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes pierrotanime { 0% { 12

100% { transform: translatex(480px); @-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については 位置を top: 122px; left: -448px;(#button 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 122px; left: -448px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 122px; left: -448px; width: 100px; height: 100px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); @-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); #button 要素が hover されたときのボタンの変化を指定します #button 要素とテキストを 半透明にして薄く見えるようにしています #button:hover { border: solid 1px rgba( 0, 0, 0, 0.1 ); background-color: rgba( 255, 0, 0, 0.1 ); #button:hover.font1 { color: rgba( 0, 0, 0, 0.1 ); 13

#button 要素が hover されたときの #pierrot 画像と #ball 画像の変化を指定します 内容は #pierrot 画像の animation-name プロパティの値を pierrotanime に指定し #ball 画像の animation-name プロパティの値を ballanime に指定しています #button.startamine #pierrot { animation-name: pierrotanime; -webkit-animation-name: pierrotanime; #button.startamine #ball { animation-name: ballanime; -webkit-animation-name: ballanime; 最後にテキストのフォントを指定しています.font1 { color: black; font: bold 28px "MS P ゴシック ", Osaka, " ヒラギノ角ゴ Pro", Verdana; line-height: 50px; 14

animation-play-state プロパティを使用してアニメーションを動かす アニメーション名 (animation-name プロパティの値 ) のセットによりアニメーションを開始する方法以外に animation-play-state プロパティの値を paused から running に変更することによってアニメーションを開始することもできます hover と併せて使用すると アニメーションを途中で休止させたりすることができます サンプル CSS animation-play-state プロパティを使用してアニメーションを動かしてみましょう マウ スカーソルをボタンに乗せている (hover) 間はアニメーションが動き マウスカーソルを ボタンから外すとアニメーションが途中で休止します AnimeTrigger5 の説明 HTML の記述 (AnimeTrigger5.html) div 要素に button という id を付けて 内容としてテキスト click ピエロの画像 玉の画像を記述します ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます <!DOCTYPE html> <html> <head> <title>animetrigger5</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="animetrigger5.css"> </head> <body> <p> Animation のトリガー </p> <div id="stage"> <div id="button"><font class="font1">hover</font> 15

<img id="pierrot" src="images/pierrot.png" alt="pierrot"> <img id="ball" src="images/colorwheel.png" alt="color Wheel"> </div> </div> </body> </html> CSS の記述 (AnimeTrigger5.css) ピエロの玉乗りアニメーションが動くステージを指定します #stage { width: 600px; height: 250px; background-color: #FFFFFF; border: solid 1px #000000; position: relative; hover するボタン #button を指定します 位置は top: 10px; left: 460px;(#stage 要素の 左上端を基準とする位置 ) で指定します #button { top: 10px; left: 460px; width: 120px; height: 50px; border: solid 1px black; border-radius: 10px; background-color: red; text-align: center; cursor: default; ピエロの画像と玉の画像は それぞれ別のアニメーションとして指定します アニメーシ ョンは animation ショートハンドプロパティで指定しています #pierrot 画像については 位置を top: 10px; left: -445px;(#button 要素の左上端を基 準とする位置 ) で指定します animation ショートハンドプロパティの指定については ア ニメーション名を pierrotanime 実行時間を 5s イージングは ease-in-out 開始待ち時 間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します animation-play-state プロパティは animation-play-state: paused; と指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画 像の位置を top: 10px; left: -445px; から transform プロパティの translatex( ) 関数を 16

使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります #pierrot { top: 10px; left: -445px; width: 88px; height: 117px; animation: pierrotanime 5s ease-in-out 0s infinite alternate; -webkit-animation: pierrotanime 5s ease-in-out 0s infinite alternate; animation-play-state: paused; -webkit-animation-play-state: paused; @keyframes pierrotanime { 0% { 100% { transform: translatex(480px); @-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については 位置を top: 122px; left: -448px;(#button 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を ballanime 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します animation-play-state プロパティは animation-play-state: paused; と指定します アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 122px; left: -448px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 122px; left: -448px; width: 100px; height: 100px; animation: ballanime 5s ease-in-out 0s infinite alternate; -webkit-animation: ballanime 5s ease-in-out 0s infinite alternate; animation-play-state: paused; -webkit-animation-play-state: paused; @keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); 17

@-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); #button 要素が hover されたときのボタンの変化を指定します #button 要素とテキストを 半透明にして薄く見えるようにしています #button:hover { border: solid 1px rgba( 0, 0, 0, 0.1 ); background-color: rgba( 255, 0, 0, 0.1 ); #button:hover.font1 { color: rgba( 0, 0, 0, 0.1 ); #button 要素が hover されたときの #pierrot 画像と #ball 画像の変化を指定します 内容は #pierrot 画像の animation-play-state プロパティの値を running に指定し #ball 画像の animation-play-state プロパティの値を running に指定しています #button:hover #pierrot { animation-play-state: running; -webkit-animation-play-state: running; #button:hover #ball { animation-play-state: running; -webkit-animation-play-state: running; 最後にテキストのフォントを指定しています.font1 { color: black; font: bold 28px "MS P ゴシック ", Osaka, " ヒラギノ角ゴ Pro", Verdana; line-height: 50px; 18

animation プロパティ全体を付加してアニメーションを動かす アニメーション名 (animation-name プロパティの値 ) のセットによる方法 animationplay-state プロパティの値を paused から running に変更する方法以外に 要素に animation プロパティ全体を付加することによってアニメーションを開始することもできます サンプル CSS animation プロパティ全体を付加してアニメーションを動かしてみましょう AnimeTrigger6 の説明 HTML の記述 (AnimeTrigger6.html) AnimeTrigger1.html の次の部分だけを変更した内容です <title> AnimeTrigger6</title> href=" AnimeTrigger6.css" div 要素に button という id を付けて onclick="classname='startamine'" を記述し 内容としてテキスト click ピエロの画像 玉の画像を記述します ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます CSS の記述 (AnimeTrigger6.css) ピエロの玉乗りアニメーションが動くステージ #stage を指定します (AnimeTrigger1.css と同じです ) クリックするボタン #button を指定します (AnimeTrigger1.css と同じです ) ピエロの画像と玉の画像には animation プロパティの指定をしません #pierrot 画像については 位置を top: 10px; left: -445px;(#button 要素の左上端を基準とする位置 ) で指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 10px; left: -445px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります 19

#pierrot { top: 10px; left: -445px; width: 88px; height: 117px; @keyframes pierrotanime { 0% { 100% { transform: translatex(480px); @-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については 位置を top: 122px; left: -448px;(#button 要素の左上端を基準とする位置 ) で指定します アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 122px; left: -448px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 122px; left: -448px; width: 100px; height: 100px; @keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); @-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); #button 要素がクリックされたときのボタンの変化を指定します (AnimeTrigger1.css と 同じです ) #button 要素がクリックされたときの #pierrot 画像と #ball 画像の変化を指定します 内容 は #pierrot 画像に animation ショートハンドプロパティ全体を指定し アニメーション名 を pierrotanime 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返 しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します #ball 画像に animation ショートハンドプロパティ全体を指定し アニメーション名を 20

ballanime 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します #button.startamine #pierrot { animation: pierrotanime 5s ease-in-out 0s infinite alternate; -webkit-animation: pierrotanime 5s ease-in-out 0s infinite alternate; #button.startamine #ball { animation: ballanime 5s ease-in-out 0s infinite alternate; -webkit-animation: ballanime 5s ease-in-out 0s infinite alternate; 最後にテキストのフォントを指定しています (AnimeTrigger1.css と同じです ) 参考 : 背景をクリックまたは hover してアニメーションを動かす アニメーションを開始する方法としてボタンのクリックまたは hover を紹介してきました が ボタンではなく背景をクリックまたは hover して開始する方法を紹介します サンプル CSS 背景をクリックしてアニメーションを動かしてみましょう AnimeTrigger2 の説明 HTML の記述 (AnimeTrigger2.html) id が stage の div 要素に onclick="classname='startamine'" を記述し 内容として guide という id 名を付けてテキスト Click を内容とする div 要素 ピエロの画像 玉 の画像を記述します ピエロの画像に pierrot という id を 玉の画像に ball とい う id を付けておきます 21

<!DOCTYPE html> <html> <head> <title>animetrigger2</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="animetrigger2.css"> </head> <body> <p> Animation のトリガー </p> <div id="stage" onclick="classname='startamine'"> <div id="guide">click</div> <img id="pierrot" src="images/pierrot.png" alt="pierrot"> <img id="ball" src="images/colorwheel.png" alt="color Wheel"> </div> </body> </html> CSS の記述 (AnimeTrigger2.css) ピエロの玉乗りアニメーションが動くステージを指定します #stage { width: 600px; height: 250px; background-color: #FFFFFF; border: solid 1px #000000; position: relative; Click というガイドテキストを指定します #guide { top: 50px; left: 50px; width: 500px; height: 150px; text-align: center; color: lightgray; font: bold 160px "MS P ゴシック ", Osaka, " ヒラギノ角ゴ Pro", Verdana; line-height: 150px; cursor: default; ピエロの画像と玉の画像は それぞれ別のアニメーションとして指定します アニメーシ ョンは animation ショートハンドプロパティで指定しています #pierrot 画像については 位置を top: 20px; left: 15px;(#stage 要素の左上端を基準と する位置 ) で指定します animation ショートハンドプロパティの指定については アニメ 22

ーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 20px; left: 15px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります #pierrot { top: 20px; left: 15px; width: 88px; height: 117px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes pierrotanime { 0% { 100% { transform: translatex(480px); @-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については 位置を top: 132px; left: 12px;(#stage 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 132px; left: 12px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 132px; left: 12px; width: 100px; height: 100px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); 23

@-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); #stage 要素がクリックされたときの変化を指定します #guide 要素のテキストを透明にし て見えないようにしています #stage.startamine #guide { color: rgba( 0, 0, 0, 0 ); #stage 要素がクリックされたときの #pierrot 画像と #ball 画像の変化を指定します 内容 は #pierrot 画像の animation-name プロパティの値を pierrotanime に指定し #ball 画像 の animation-name プロパティの値を ballanime に指定しています #stage.startamine #pierrot { animation-name: pierrotanime; -webkit-animation-name: pierrotanime; #stage.startamine #ball { animation-name: ballanime; -webkit-animation-name: ballanime; 24

サンプル CSS 背景を hover してアニメーションを動かしてみましょう AnimeTrigger4 の説明 HTML の記述 (AnimeTrigger4.html) id が stage の div 要素には何も記述せず 内容として guide という id 名を付けてテキスト Hover を内容とする div 要素 ピエロの画像 玉の画像を記述します ピエロの画像に pierrot という id を 玉の画像に ball という id を付けておきます <!DOCTYPE html> <html> <head> <title>animetrigger4</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="animetrigger4.css"> </head> <body> <p> Animation のトリガー </p> <div id="stage"> <div id="guide">hover</div> <img id="pierrot" src="images/pierrot.png" alt="pierrot"> <img id="ball" src="images/colorwheel.png" alt="color Wheel"> </div> </body> </html> CSS の記述 (AnimeTrigger4.css) ピエロの玉乗りアニメーションが動くステージを指定します #stage { width: 600px; height: 250px; background-color: #FFFFFF; border: solid 1px #000000; position: relative; Hover というガイドテキストを指定します 25

#guide { top: 50px; left: 50px; width: 500px; height: 150px; text-align: center; color: lightgray; font: bold 160px "MS P ゴシック ", Osaka, " ヒラギノ角ゴ Pro", Verdana; line-height: 150px; cursor: default; ピエロの画像と玉の画像は それぞれ別のアニメーションとして指定します アニメーションは animation ショートハンドプロパティで指定しています #pierrot 画像については 位置を top: 20px; left: 15px;(#stage 要素の左上端を基準とする位置 ) で指定します animation ショートハンドプロパティの指定については アニメーション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します アニメーション名 pierrotanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 20px; left: 15px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させます 復路はこの逆の動きになります #pierrot { top: 20px; left: 15px; width: 88px; height: 117px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes pierrotanime { 0% { 100% { transform: translatex(480px); @-webkit-keyframes pierrotanime { 0% { 100% { -webkit-transform: translatex(480px); #ball 画像については 位置を top: 132px; left: 12px;(#stage 要素の左上端を基準とす る位置 ) で指定します animation ショートハンドプロパティの指定については アニメー ション名を指定しないで 実行時間を 5s イージングは ease-in-out 開始待ち時間は 0s 繰り返しは infinite( 永久 ) 実行方向は alternate( 往復 ) と指定します 26

アニメーション名 ballanime に対応するタイムライン (@keyframes) を指定します 画像の位置を top: 132px; left: 12px; から transform プロパティの translatex( ) 関数を使用して X 方向へ 480px 移動させながら rotatez( ) 関数で時計回りに 720 度回転 (2 回転 ) させます 復路はこの逆の動きになります #ball { top: 132px; left: 12px; width: 100px; height: 100px; animation: 5s ease-in-out 0s infinite alternate; -webkit-animation: 5s ease-in-out 0s infinite alternate; @keyframes ballanime { 0% { 100% { transform: translatex(480px) rotatez(720deg); @-webkit-keyframes ballanime { 0% { 100% { -webkit-transform: translatex(480px) rotatez(720deg); #stage 要素が hover されたときの変化を指定します #guide 要素のテキストを透明にして 見えないようにしています #stage:hover #guide { color: rgba( 0, 0, 0, 0 ); #stage 要素が hover されたときの #pierrot 画像と #ball 画像の変化を指定します 内容は #pierrot 画像の animation-name プロパティの値を pierrotanime に指定し #ball 画像の animation-name プロパティの値を ballanime に指定しています #stage:hover #pierrot { animation-name: pierrotanime; -webkit-animation-name: pierrotanime; #stage:hover #ball { animation-name: ballanime; -webkit-animation-name: ballanime; 27