ミニものブログ(旧)

ミニチュアを作っています!

【初心者向け】HTMLとは?CSSとは?


スポンサーリンク

ミニチュアとは関係ない話題です。

 

私がHTMLを学んだのは、20年ほど前なので、古い知識がベースなのですが、たぶん基本的な仕組みは変わらないと思いますので、ざっくりと初心者向けのHTMLとCSSの解説をしたいと思います。(まぁ、20年前にCSSを使っていた人は、ごく少数でしょうけど。私がCSSを使い始めたのは2004年あたり…。)

 

きっかけは、以下の記事を読んで…。

 

www.otonan.com

力作な記事だと思いますが、視覚表現として、使ってほしくない要素もあったりしますね。

 

まずはWeb(ウェブ)の基本構造から

 

Webの基本構造をざっくりと解説すると、文書形式のHTML(エイチティーエムエル、HyperText Markup Language)と、文書転送のルール・約束ごとのHTTP(エイチティーティーピー、HyperText Transfer Protocol)と、文書のありかを示すURL(ユーアールエル、Uniform Resource Locator)の3つから構成されています。

 

f:id:mini-mono:20170311203706j:plain

 

HTMLは、Webページの構造・骨格をつくる言葉です。そのHTMLが正しい構造でないと、いろいろとマズいことになるかもしれません。

 

CSSは、『Cascading Style Sheets(カスケーディング・スタイル・シート)』の略称で、呼称は「シーエスエス」。一般的に、『スタイルシート』といえば、CSSを指します。(JavaScriptもスタイルシートがありますけどね。略してJSS。)

 

HTMLとCSSの関係

 

HTMLは、Webページの構造をつくる言葉ですが、文書の論理構造が主な役割なので、外観・見た目的には、とっても地味…。CSSは、そのHTMLを装飾して、見栄えをよくする役割の言葉です。

 

このブログを、CSSなしのHTMLだけで表示すると以下のようになります。

f:id:mini-mono:20170311204728j:plain

 

…すごい…地味です。

 

まぁ、大事なのは中身で、見た目はどうでも…と言いたいところですが、最近の世の中の風潮として、やっぱり見た目も重要視されますよね。

 

装飾表現が豊かなCSSを使うと、味気ないHTMLは見栄え良くなります。

f:id:mini-mono:20170311205100j:plain

 

うーん、全然ちがいますね。中身の論理構造は同じなんですけども…。HTMLは「すっぴん」で、CSSは「化粧・メイク」といった感じでしょうか。

 

CSSを使うと、さりげないナチュラルメイクから、ド派手な厚化粧まで、Webページを装飾できます。

 

CSSの加え方は3つ

 

ざっくりと、HTMLにCSSを加味する方法としては、以下の3つ。

 

1. style属性で要素ごとに適用する

 

個別にCSSを適用させる方法です。たとえば、HTMLの段落(p)タグに、以下のように書きます。

 

<p style="color: red">

 

【注意】<>の部分は全角ですが、本来は半角です。

 

f:id:mini-mono:20170311210306j:plain

 

この方法はメンテナンス性が悪いので、個人的には、あまり推奨はしません。

 

2. head要素内にstyle要素を加えて、1つのページ内に適用させる

 

ページごとにCSSを適用させる方法です。

 

<p style="text/css">

p {color:red}

</style>

 

【注意】<>の部分は全角ですが、本来は半角です。

 

f:id:mini-mono:20170311210533j:plain

 

こう書いておくと、そのページ内のp要素すべてに、指定したCSSが適用されます。

 

 3. 外部にCSSファイルを置いてサイトまるごと適用させる

 

この方法が1番メジャーなCSSの利用法でしょうか。CSSを別ファイルとして置いて、各ページから呼び出す方法です。

 

実装の方法はいくつかあるみたいですが、一般的に外部CSSを参照させる方法は、HTMLのhead要素内に、link要素を追加して、外部CSSファイルを呼び出すやり方がメジャーかもしれません。

 

<link rel="stylesheet" type="text/css" href="gaibu.css">

 

【注意】<>の部分は全角ですが、本来は半角です。

 

f:id:mini-mono:20170311211119j:plain

 

HTMLファイルとCSSファイルを分離させるメリットは、メンテナンスが簡単なことでしょうか。

 

たとえば、サイトやブログの全てのページの(段落の)文字色を黒から赤に変更したい場合、元となるCSSファイルの一文を変更させるだけでOKです。

 

f:id:mini-mono:20170311211342j:plain

 

個別のHTMLタグに、CSSを指定することが推奨されない理由はこれだと思われます。

 

サイトやブログの記事数・文章量が少なければ、あまり手間がかからないかもしれませんが、記事数が100や200といった数になると、個別にCSSを適用させたHTMLタグの変更は、めちゃくちゃ手間がかかるでしょう(もはや苦行)。

 

独立させたCSSファイルにて、サイトやブログのHTMLを一括管理させると、装飾の変更は簡単になります。たとえば、ブログの文字色を青に変更させたい場合は、以下のようにすればOKです。

 

f:id:mini-mono:20170311211932j:plain

 

 CSSの書き方によっては、もっと細かなコントロールができるようになります。今回は、ざっくりとHTMLとCSSをイメージして頂ければ幸いです。

 

基本的に視覚的な装飾は、CSSを使うことが推奨されています。無理にHTML(論理構造言語)で装飾しようとすると、いろいろと問題が発生するかもしれません。

 

ブログやサイトに訪れるのは、目の見える方だけではなく、目の不自由な方も訪れます。HTMLを視覚的な表現で優先させると、論理的な構造がおかしくなって、こういった方々への負担になりますので…。

 

(趣旨とは全く関係ない愚痴ですけど、はてなブログは、シンタックスハイライトを使おうとすると、手順が面倒すぎる…。)