HTMLは「CSS」と一緒ならプログラミング言語になれるのか?HTMLは何者か【第2回】

「HTML」はプログラミング言語ではない。だが「CSS」との組み合わせであれば、プログラミング言語と呼べるのだろうか。

2022年09月09日 08時15分 公開
[Darcy DeCluteTechTarget]

 Webページのレイアウトやデザインを指定する一般的な手段が、「HTML」と「CSS」の組み合わせだ。HTMLがWebページのテキストを指定し、CSSが書体やページレイアウト、色といったWebページの外見を設定する。

 よくある質問に「CSSはプログラミング言語なのか」「HTMLとCSSの組み合わせはプログラミング言語の基準を満たしているのか」というものがある。実際のところはどうなのか。一言で言うと、

  • CSS単体も、HTMLとCSSの組み合わせのどちらもプログラミング言語ではない

ということになる。

HTMLとCSSの組み合わせの“限界”

 ソースコード共有サービス「JSFiddle」には、素数探索アルゴリズム「エラトステネスのふるい」を、HTMLとCSSで実装したプログラムが幾つか存在する。エラトステネスのふるいは複雑なアルゴリズムだ。エラトステネスのふるいが実装できることは、HTMLとCSSの組み合わせにより、CPUによる演算が活用できることを実証していると言える。

 HTMLとCSSによるエラトステネスのふるいの実装には、特定の動作環境を決め打ちしてソースコードに指示を記述する「ハードコーディング」が必要な部分がかなりある。これはHTMLとCSSの組み合わせをプログラミング言語として扱う上で、さまざまな欠点があることを意味する。

 開発者はCSSにおいて、HTMLの要素(エレメント)に分類名を割り振る「class」という仕組みを使うことで、特定のスタイルをエレメントに適用できる。プログラミング言語における変数としてclassを扱うことは現実的でない。classが保管するデータは限定的であり、汎用(はんよう)的なデータ保管に使えるわけではないからだ。

 CSSは特定の条件に一致するHTMLエレメントに対してスタイルを適用できる。ただしプログラミング言語の「if」に該当する条件文と同等の、複雑な条件分岐ができるわけではない。ループ(繰り返し)処理もできない。こうした理由により、CSS単体およびCSSとHTMLの組み合わせをプログラミング言語だとみなすことはできない。

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

From Informa TechTarget

お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。

ITmedia マーケティング新着記事

news129.jpg

「ドメインリスト貸し」は何がマズい? サイトの評判の不正使用について解説
「サイトの評判の不正使用」について理解し、正しい対策が取れるにしましょう。

news046.jpg

代理店にもAIにも「丸投げ」はダメ 成果報酬型マーケティングを成功させるポイントは?
「成果報酬型マーケティング」を実現する上でインターネット広告業界が直面する課題とは...

news186.jpg

YouTubeやTikTokの利用時間、20代以下ではテレビを圧倒 どれだけ差がついた?
YouTubeやTikTokでのコンテンツ視聴は購買行動に関係しているのか。PRIZMAが10代から30代...