HTML & CSS

このWebサイトについて&キーワード

■ htmlの基本文法やタグ一覧,cssの基本文法やプロパティ一覧などを紹介するページです。

Pick up

■ HTMLとは | CSSとは | よく使用するCSSプロパティ一覧

【CSSとは (4-4)】CSS3 display:grid (グリッドレイアウトの実装)

カテゴリ : CSSとは, html/css, すべてのカテゴリ

display:grid (グリッドレイアウト)

displayプロパティの値にgridを指定することで行と列によるレイアウトが実装できます。(テーブルをCSSで作成するイメージ)
グリッド上の2本の線の間の空間をトラックと呼びます。(テーブルで言うところのセル)

grid-template-columns : 幅(列の数だけ値を記述する)

列トラックのサイズを定義できるプロパティ

htmlの記述

<div class="wrap">
 <p class="box box1">ボックス1</p>
 <p class="box box2">ボックス2</p>
 <p class="box box3">ボックス3</p>
 <p class="box box4">ボックス4</p>
 <p class="box box5">ボックス5</p>
 </div>

cssの記述

*{
 margin:0;
 padding:0;
 /*初期余白リセット*/
 }
 .wrap{
 width:450px;
 display:grid;
 background:#ccc;
 grid-template-columns: 150px 150px 150px
 }
 .box{
 border:1px #333 solid
 }

デモ

fr (伸縮可能な単位)

グリッド全体は親要素に対して目一杯の範囲を持ち、指定した値の分数で列数やトラックの幅を表す。

・grid-template-columns: 1fr 1fr 1fr
1 + 1 + 1 =  3が列数になり、それぞれのトラックの幅は1/3となる

・grid-template-columns: 2fr 1fr 1fr
2 + 1 + 1 =  4が列数になり、それぞれのトラックの幅は最初の列が2/4、後の2列は1/4となる

repeat記法 (列の数が多くなる場合に使用)

・grid-template-columns: 1fr 1fr 1fr 1fr 1fr

・grid-template-columns: repeat(5,1fr)で表すことができる

 

grid-auto-rows : 値

トラックの高さを指定

htmlの記述

<div class="wrap">
 <p class="box box1">ボックス1</p>
 <p class="box box2">ボックス2</p>
 <p class="box box3">ボックス3</p>
 <p class="box box4">ボックス4</p>
 <p class="box box5">ボックス5</p>
 </div>

cssの記述

*{
 margin:0;
 padding:0;
 /*初期余白リセット*/
 }
 .wrap{
 width:450px;
 display:grid;
 background:#ccc;
 grid-template-columns: 150px 150px 150px;
 grid-auto-rows: 200px
 }
 .box{
 border:1px #333 solid
 }

デモ

 

トラックの領域

グリッドによるトラックの領域は列と行を線の位置で指定することができるスクリーンショット 2020-05-13 10.32.08

1のトラックの範囲は列の線の開始位置が1・終了位置が2、行の線の開始位置が1・終了位置が2と言う状態(初期の状態)

htmlの記述

<div class="wrap">
 <p class="box box1">ボックス1</p>
 <p class="box box2">ボックス2</p>
 <p class="box box3">ボックス3</p>
 <p class="box box4">ボックス4</p>
 <p class="box box5">ボックス5</p>
 <p class="box box6">ボックス6</p>
 <p class="box box7">ボックス7</p>
 <p class="box box8">ボックス8</p>
 <p class="box box9">ボックス9</p>
 <p class="box box10">ボックス10</p>
 </div>

cssの記述

*{
margin:0;
padding:0;
/*初期余白リセット*/
}
.wrap{
width:800px;
display:grid;
background:#ccc;
grid-template-columns: repeat(3,1fr);
grid-auto-rows: 150px
}
.box{
border:1px #333 dashed
}
.box1{
background: #f00;
}

デモ

 

スクリーンショット 2020-05-13 10.38.22

下記の記述で上の図のように列の線の開始位置が1・終了位置が2、行の線の開始位置が1・終了位置が3と言う状態に変更することができる

htmlの記述

<div class="wrap">
<p class="box box1">ボックス1</p>
<p class="box box2">ボックス2</p>
<p class="box box3">ボックス3</p>
<p class="box box4">ボックス4</p>
<p class="box box5">ボックス5</p>
<p class="box box6">ボックス6</p>
<p class="box box7">ボックス7</p>
<p class="box box8">ボックス8</p>
<p class="box box9">ボックス9</p>
<p class="box box10">ボックス10</p>
</div>

cssの記述

*{
margin:0;
padding:0;
/*初期余白リセット*/
}
.wrap{
width:800px;
display:grid;
background:#ccc;
grid-template-columns: repeat(3,1fr);
grid-auto-rows: 150px
}
.box{
border:1px #333 dashed
}
.box1{
grid-column-start: 1;
grid-column-end: 3;
grid-row-start: 1;
grid-row-end: 3;
background: #f00;
}

デモ

grid-column-start: 数値

列の開始位置(線の位置)を指定

grid-column-end: 数値

列の終了位置(線の位置)を指定

grid-row-start: 数値

行の開始位置(線の位置)を指定

grid-row-end: 3

行の終了位置(線の位置)を指定

【CSSとは (4-3)】CSS3 animation アニメーションの実装

カテゴリ : CSSとは, html/css

animation: アニメーションの設定をまとめて記述

animation-name、 animation-duration、 animation-timing-function、 animation-delay、 animation-iteration-count、 animation-direction、animation-fill-modeを、組み合わせて指定することができる

animation-name :キーワード(任意)

アニメーションの名前を決める、後述の@keyframes(具体的な実行内容を指定する記述)で指定されるため必須

animation-duration:数値(単位をs / 秒で指定)

アニメーションが行われる時間を指定する

animation-timing-function:キーワード

アニメーションの速度変化を指定する

  • ease 開始と完了を滑らかにする(初期値)
  • linear 一定に動かす、機械的に動く
  • ease-in ゆっくり始まる、加速がかかる
  • ease-out ゆっくり終わる、減速がかかる
  • ease-in-out ゆっくり始まってゆっくり終わる、加速・等速・減速がかかるため自然に動く

animation-delay:数値(単位をs / 秒で指定)

アニメーションを開始する時間を設定する

animation-iteration-count:数値またはキーワード

アニメーションを実行する回数

  • infinite 無限に再生を繰り返す
  • 数値 再生回数を指定(初期値は1)

animation-direction

アニメーションを複数回繰り返す場合、方向を交互に反転再生させるかどうかを指定する
(例:背景を白から黒までアニメーションさせた後、黒から白へと反転させるかどうか)

  • normal 普通方向にアニメーションを繰り返し再生する(初期値)
  • alternate アニメーションの方向を交互に反転再生させる

animation-fill-mode : キーワード

アニメーション終了後の状態を設定する(アニメーション実行回数が無限の場合無効)

  • none アニメーション終了後にcssは適用されなくなる(初期値)
  • forwards アニメーション終了後は最後に指定したcssが適用
  • backwards アニメーション終了後は最初に指定したcssが適用

例)

h1{
  animation: bgChg 10s ease 2s infinite alternate;
}

上記の実行内容:

アニメーションの名前:bgChg

アニメーションする時間:10秒間
アニメーションの速度変化:開始と完了を滑らかにする
アニメーションをいつ開始するか:読み込んでから2秒
アニメーションの繰り返し数:無限
アニメーションの方向:交互に反転再生させる

@keyframesの記述

具体的なアニメーションの実行内容を指定する(キーフレームアニメーションを作成)

 

@keyframes アニメーションの名前{
0%{プロパティ: 値;プロパティ:値;プロパティ:値;}
50%{プロパティ: 値;プロパティ:値;プロパティ:値;}
100%{プロパティ: 値;プロパティ:値;プロパティ:値;}
}

@keyframesの後にアニメーションの名前を指定(あらかじめanimationプロパティで設定した名前)し、%によるアニメーションの指定を行う。各位置ごとにCSSのプロパティと値を記述(複数指定可)し、それぞれの位置の変化をアニメーションする

例)

 

@keyframes bgChg{
0%{background-color: #f00;color:#ff0}
50%{background-color: #0f0;color:#000}
100%{background-color: #ff0;color:#f00}
}

指定するアニメーションの名前:bgChg

 0%の指定:背景を赤、文字色を黄色
 50%の指定:背景を緑、文字色を黒
100%の指定:背景を黄色、文字色を赤

 

【CSSのみで作成】スクロールを促すアニメーション

カテゴリ : CSSとは, html/css, HTMLとは

Webページのヘッダー部分などに良くみられる、ページ下へのスクロールを促すためのサンプルと解説になります。
線が上から下にアニメーションをするシンプルな内容です。

svgやjs(jQuery )などは使用せず、CSS3のanimationプロパティのみで作成をします。

サンプルのコピー&ペーストのみで実装ができます。

記述例(html / css):

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>無題ドキュメント</title>
	<style>
		#test{
			background-color: #ccc;
			height: 150px;
			overflow: hidden
		}

		#test:after{
			content:"";
			display: block;
			width: 1px;
			border-left:1px #000 solid;
			animation:scroll 2s ease 0s infinite normal;
			margin: 0 auto 0;
		}

		@keyframes scroll{
			0%{
				height: 0;
			}
			50%{
				height: 150px;
				margin-top: 0;
			}
			100%{
				margin-top: 150px;
				height: 150px;
			}
		}
	</style>
</head>

<body>
	<p id="test"></p>
</body>
</html>

実際の動きはデモからご覧いただけます。

解説:

・HTMLの記述はp(id名test)のみとなります。

・CSSで#testに対しheightを指定し、overflow:hiddenで子要素がはみ出した場合の処理を隠すようにします。(背景色は領域確認用なので削除して構いません)

・#test内に:afterの記述で要素を作成、content:”” で内容は空としborder-leftでアニメーションさせる線を表現します。

・キーフレームの記述で0%時点で高さを0に、50%で高さを150pxにすることで上から下に線が描画されます。

・また50%時点でmargin-topを0に、100%でmargin-topを150pxにすることで線の上の位置を移動させるアニメーションを実装します。

タグ:||

【CSSとは (3-11)】 ::before / ::after 擬似要素について

カテゴリ : CSSとは, html/css

要素名::beforeと要素名::afterによる擬似要素の作成

CSSのセレクタ 部分に要素名::before(または要素名::after)と指定することで、要素の直前(または直後)に内容を挿入することができます。

この記事の続きを読む

【CSS】レスポンシブWebデザインについて【メディアクエリ】

カテゴリ : CSSとは, html/css

レスポンシブWebデザインについて

大きさの異なるデバイス毎(PC、タブレット、スマートフォンなど)に、Webページのレイアウトを可変させるデザインをレスポンシブWebデザインと言います。
一つのHTMLファイルに対してCSSでデバイスごとのレイアウトを指示するものとなります。

この記事の続きを読む

【CSSとは (3-10)】 CSSプロパティ / flex

カテゴリ : CSSとは, html/css, すべてのカテゴリ

display:flex(要素の並列レイアウト)

CSSので要素を並列にレイアウトするためには、displayプロパティの値にflexを指定します。

この記事の続きを読む

【CSS3解説】E:nth-of-type() 順番を指定する擬似クラスについて

カテゴリ : CSSとは, html/css

要素名:nth-of-type()

CSSのセレクタ で要素の順番(番号・奇数・偶数・倍数など)を指定することができます。
主な指定方法は以下の3種類となります。

  • ()内に数値入力で順番指定。
    E:nth-of-type(3){プロパティ:値}
  • ()内にキーワード指定「even」で偶数、「odd」で奇数を指定。
    E:nth-of-type(even){プロパティ:値} , E:nth-of-type(odd){プロパティ:値}
  • ()内に数値nで倍数指定。
    E:nth-of-type(3n){プロパティ:値}

nth-of-typeの記述例(class名などは任意):

この記事の続きを読む

font-size %指定について

カテゴリ : CSSとは, html/css, すべてのカテゴリ

Font 006 by Stephen Coles

 

 

 

先日サイト制作にあたってのfont-sizeの指定について質問がありました。

 

 

font-sizeはpx(ピクセル)指定するべきなのか?%指定するべきなのか?

 

 

といった内容です。(他にもemやexやptなどもありますが、今回は上記の二点に絞ってお話しします)

感覚的に楽に指定できる単位はやはりピクセルでの指定ですが、ピクセルでの指定を行った場合IEでの拡大縮小が効かなくなってしまいます。

というわけで様々なブラウザへの対応や、アクセシビリティを考慮したサイト制作をする場合は%での指定が良いでしょう。

 

 

 

何を基準に%指定するのか?

 

これも先日あがった質問です。100%と指定した文字は一体どれくらいの大きさになるのか?

 

まずはブラウザのデフォルトフォンとサイズを確認してみましょう。

ブラウザ別デフォルトフォントサイズ一覧表(外部サイトへ飛びます)

 

ほとんどの主要ブラウザがデフォルトフォントサイズに16pxを採用しています。

そのためfont-size:100%と指定をすれば16pxのサイズとなります。

 

 

 

じゃあ15pxにするには何%と指定するのか?

 

100%の指定で16pxになるのであれば、15pxは99%か?というともちろん違います。

100%の前後数%までは16pxの指定となるため、サイズが切り替わるタイミングを把握していないといけません。

 

これについて分かりやすくまとめてられているサイトがありました。

font-size指定

ブラウザごとの差異が出ない%での指定値」という表がとても参考になります。

 

 

 

上記のようなことをふまえて、的確な%指定を行うとデザイン的にもアクセシビリティ的にも優れたWebページのデザインができますね。

 

【HTML / CSS】文字コードについて

カテゴリ : CSSとは, html/css, HTMLとは, すべてのカテゴリ

charset

 

先日文字コードについて、「よく分かっていないので解説してください」というリクエストをいただきました。
だいぶ時間がかってしまったのですが、今日は文字コードについての説明をしたいと思います。

文字コード  = 文字を表現するためのバイト表現

 「そもそも文字コードって何?」という方はWikipediaで確認してみましょう。

文字コード (Wikipedia)

コンピュータ上で文字(キャラクタ (コンピュータ))を利用するために各文字に割り当てられるバイト表現

と書かれているように、コンピュータで文字を表現するにはこの文字コードと呼ばれるバイト表現を使う必要があります。
いまここに打たれている文字も、そのバイト表現によって文字として表示されていることになります。
Webの製作においても、html、css、Javascriptなどの文書の中では文字を扱うことになります。ということは当然それらの文字を文字コードで表現していることとなるわけです。

さらに文字コードにはいくつかの種類があります。
もちろんその種類によって使用されるバイト表現も異なることになります。

charset2

 代表的な文字コード

この記事の続きを読む

【CSSとは (4-2)】 よく使用するプロパティと値の組み合わせ / リストのマーカーを無くす

カテゴリ : CSSとは, html/css, すべてのカテゴリ

 

CSSでよく使用するプロパティと値の組み合わせ「リストのマーカーを無くす」指示についての解説です。

 


 

リストのマーカー

<ul> <li> や <ol> <li> 内の li要素 はデフォルトの設定では「中黒」や「通し番号」等のマーカーがつきます。

 

スクリーンショット 2013-11-04 19.25.27

この記事の続きを読む

【CSSとは (4-1)】 よく使用するプロパティと値の組み合わせ / 要素の中央揃え

カテゴリ : CSSとは, html/css, すべてのカテゴリ

 

スクリーンショット 2013-11-02 0.35.47

 

CSSでよく使用するプロパティと値の組み合わせ「要素の中央揃え」についての解説です。

 


 

要素の中央揃え

Webサイト全体を中央にそろえたい場合など、要素を中央にそろえる際にはmarginプロパティを使用します。

例えばサイト全体を囲むdiv (id=container)を中央にそろえたい場合以下の記述をします。

この記事の続きを読む

タグ:|

【CSSとは (3-9)】 CSSプロパティ / float,clear,overhidden

カテゴリ : CSSとは, html/css

 

先日floatの解除について質問をいただきました。

 

以前の記事の中でも簡易的な解説は載せていたのですが、今回は一歩踏み込んだ解説をしたいと思います。

とは言ってもぼくの発見した新しいテクニック、とかではなく世の中的には一般化されている知識のお話です。

 

 

floatについての基本的な解説はこちらの記事をご覧になってください。

 

下記から解説になります。

 

この記事の続きを読む

タグ:|

【CSSとは (3-8)】 CSSプロパティ / display

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSSのプロパティ「display」についての解説です。

 


 

display

displayは要素の表示形式を指定するプロパティです。

 

xhtmlなどで使用される要素は大きく分けて「ブロックレベル要素」と「インライン要素」に分けられます。

それぞれに特徴があるため、そのままの表示形式ではできないことがあります。

 

例えば「インライン要素に対して幅(width)や高さ(height)の指定が効かない」ということがあります。

これはインライン要素が「文章の一部」として理解される要素であるからで、幅は文字の数、高さは文字の大きさとなるからです。

 

そのためインライン要素であるa要素などに幅や高さを指定したい場合は、下記の記述で表示形式をブロックレベル要素に変更するための指示を出します。

この記事の続きを読む

【CSSとは (3-7)】 CSSプロパティ / float,clear

カテゴリ : CSSとは, html/css, すべてのカテゴリ

 

(Floating Holiday Candles in Reflection Pool By aimilino01)

 

CSSのプロパティ「float」についての解説です。

 


 

float

floatは指定した要素の後に続く要素の回り込みを指定します。

通常ブロックレベル要素は前後に改行が入るため上下に並ぶことになります。ブロックレベル要素同士(またはブロックレベル要素とインライン要素)を左右に並べるためによく使用されるプロパティです。

例えばboxというクラス名のdiv要素にfloatの指定をします。

この記事の続きを読む

【CSSとは (3-6)】 CSSプロパティ / border

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSSのプロパティ「border」についての解説です。

この記事の続きを読む

【CSSとは (3-5)】 CSSプロパティ / 文字(text-align,line-height)

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSSのプロパティ「text-align」 「line-height」についての解説です。

  • text-align : 値  (文字の揃えを指定)
  • line-height : 値 (文字の行間を指定)

この記事の続きを読む

【CSSとは (3-4)】 CSSプロパティ / 文字(color,font-size,font-family)

カテゴリ : CSSとは, html/css, すべてのカテゴリ

文字に関するCSSのプロパティ「color」 「font-size」 「font-family」についての解説です。

この記事の続きを読む

【CSSとは (3-3)】 CSSプロパティ / background (色、イメージ、繰り返し)

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSSのプロパティ「background」についての解説です。

この記事の続きを読む

【CSSとは (3-2)】 CSSプロパティ / margin,padding

カテゴリ : CSSとは, html/css, すべてのカテゴリ

20131013-231844.jpg

 CSSのプロパティ「margin」と「padding」についての解説です。

この記事の続きを読む

【CSSとは (3-1)】 CSSプロパティ / width,height

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSSによる幅と高さの指定

CSSのプロパティ「width」と「height」についての解説です。

この記事の続きを読む

【CSSとは (3)】 よく使用するCSSプロパティ一覧

カテゴリ : CSSとは, html/css, すべてのカテゴリ

よく使用するCSSのプロパティ一覧を紹介します。
それぞれのプロパティに関する具体的な解説は徐々に追加していきます。

【よく使用するCSSプロパティ一覧】

この記事の続きを読む

【CSSとは (2)】 CSSの基本文法

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSSの基本文法

CSSはセレクタ ・プロパティ・値によって構成されます。

例えばHTMLで作成したh1要素に対して、文字の色を赤くすると言った指示をCSSから出す場合下記のような記述になります。

この記事の続きを読む

タグ:|

【CSSとは (1)】 CSSの役割

カテゴリ : CSSとは, html/css, すべてのカテゴリ

CSS(Cascading Style Sheets、カスケーディング・スタイル・シート)

HTMLと同様にWeb制作の中で用いられる言語の一つがこのCSS(Cascading Style Sheets)です。
HTMLに「文書を作成する」という役割があったようにCSSには「装飾(デザイン)の指定をする」という役割が存在します。
HTMLのみで作成された文書は色や大きさ、レイアウトなどの指示が出されていない状態です。
そのため非常に読みづらい文書になってしまいます。

 

たとえば当サイトをHTMLのみで記述した場合、以下のように表示されます。

この記事の続きを読む

タグ:|

最近の投稿

About Web Site & Key Word

このWebサイトについて&キーワード

■ html,css,JavaScriptなどのweb言語についての解説やメモ、Flash(ActionScript)でゲーム制作を行うための技術紹介、 WordPressを使用したCMS作成のための解説やメモ、アプリ制作の記録や解説やメモ、またそれらにまつわるニュースやブログを掲載します。

■ web制作,CMS制作,ゲーム制作,アプリ制作,
Android,iOS,iPhone,iPad,html,css,JavaScript,Flash,ActionScript,php,cgi,WordPress,Titanium Studio,ブログ,ニュース