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

なぜクラウド全盛の今「メインフレーム」が再び脚光を浴びるのか

なぜクラウド全盛の今「メインフレーム」が再び脚光を浴びるのか
メインフレームを支える人材の高齢化が進み、企業の基幹IT運用に大きなリスクが迫っている。一方で、メインフレームは再評価の時を迎えている。

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

news017.png

「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年5月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。

news027.png

「ECプラットフォーム」売れ筋TOP10(2025年5月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

news023.png

「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年5月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...