
No.2ベストアンサー
- 回答日時:
>cssは複数作るものなのでしょうか。
通常はそうです。スタイルシートには、
ちょっと別のアングルから説明する、外部スタイルシートには
固定スタイルシート
<link rel="STYLESHEET" href="default.css" type="text/css">
優先スタイルシート
<link rel="STYLESHEET" href=" standard.css" title="標準" type="text/css">
代替スタイルシート
<link rel="ALTERNATE STYLESHEET" href="big.css" title="大きなフォント" type="text/css">
があり、さらにmediaタイプで適用する端末も指定できます。
さらに、これらは複数あっても構いません。
たとえば優先スタイルシートにて
<link rel="STYLESHEET" href=" standardD.css" title="標準" type="text/css">
<link rel="STYLESHEET" href=" standardC.css" title="標準" type="text/css">
のように二つあっても良いのです。
たとえば、この場合、
default.cssでテキストインデントやフォントのサイズ、背景を指定して
standardD.cssで、配置や枠の大きさなどだけ指定し、standardC.cssで配色を指定する。そうするとより後に出てくるスタイルシートで上書きされ、そうでない指定は継承(カスケード)されます。
複数(ページ内、要素内、ユーザーを含めて)用意して、それらが順番に継承されるからこそ、カスケードスタイルシート(CSS)なのですから。
ちなみに私は、
デフォルト (CSS1)
サイト内統一部分・サイト内リンクとか・・ (CSS2)
各テーマのトップページ(ホーム)のデザイン (CSS3)
そのテーマの配置 (CSS4)
そのテーマの配色 (CSS5)
と分けていて、
Top index.html --- CSS1+CSS2+CSS3
|-- theme1
| |-index.html --- CSS1+CSS2+CSS3+CSS4
| |-page1.html --- CSS1+CSS2+CSS4
| |-page1.html --- CSS1+CSS2+CSS4
というふうに整理しています。
好きなときにデザインだけ、あるいは色だけ変えるとか、そうすることで、労力もトラフィックも軽減できますから
ご回答いただきありがとうございます。
なるほどー。
同じデザインの部分をすべてのページに適用するなら、すべてのcssに同じことを書くのではなく、
一つ用意しておいて、そこから継承すればいいのですね。
だから゛カスケード”というわけですか。
今わかりました。
これは目からウロコですね。
No.6
- 回答日時:
私は各テーマのスタイルを記述した外部CSSファイルそれぞれの冒頭に
@import url("default.css");
と書いて、HTMLからは1つのCSSファイルを参照するようにしてます。
全てのページに
<link rel="stylesheet" type="text/css" href="default.css">
と書くよりCSSファイルに書く方が数が少ないので。
default.cssでなくdefault2.cssと組み合わせたいページも存在するとかなら
HTMLファイルに書いたかもしれません。
ご回答いただきありがとうございます。
今回初めて“インポート”というものを聞いたのですが、
だんだんわかってきました。
>全てのページに
<link rel="stylesheet" type="text/css" href="default.css">
と書くよりCSSファイルに書く方が数が少ないので。
基本は無駄な記述をなくすということですよね。
No.5
- 回答日時:
No.3 snowizeさん
>HTML側からは1種類のスタイルシートしか指定せず、そのスタイルシートが他のスタイルシートをインポートした方がよくないですか?
いえ、それじゃトラフィックの低減にも管理のわずらわしさの低減にもなりません。巨大なCSSを分割しただけですよね。
たぶん多くの比較的規模の大きなサイトでは、デザインが共通する部分、あるいは違う部分があると思います。
たとえば、複数のテーマを持つサイトがあるとします。まあ、先の例と同じなのですが、すこし具体的に書くと。
Top index.html --- 私が管理しているサイトの最上位
| (別にディレクトリ構造に基づかなくても良いけど)
|-- job/ --------ここには私の本業の話題
| |-index.html --- そのトップページ(本業のサイトのホームになる)
| |-page1.html --- 1ページ目
| |-page1.html --- 2ページ目
|-- books/ --------私の著作物とか
| |-index.html --- 目次
| |-book1.html --- 一冊目の紹介
| |-book2.html --- 2冊目の紹介
|-- hoby/ --------趣味
| |-index.html
| |-page1.html
たとえば、すべてのページに標準的に指定したいものは、default.cssに書いておく。
default.css
body{ background :*****}
a[name]{border:none;}
p{ text-indent: 1em;}
h1{ font-size: 2em; text-align:center;}
ul.SiteNavi{ position: absolute;*******}
また、各テーマのトップには目次の役割があるので、その配下のページとはデザインが異なるはずです。
たとえば
job/index.htmlとjob/page1.htmlは色は同じだけど、デザインが異なる。それで
デザインだけ指定した
topPage.css
そして、各テーマにごとの、
bookColor.css
★こうすることで、そのページに必要なCSSが最低限のものになります。
さらに、HTMLも簡単になるのです。
もしひとつ(importを使っても)のCSSで記述するなら、htmlもtopにあるindex.htmlでは
<h1 class=topPageh1">とか指定する必要があり、これはとてもじゃないけど大変ですし、そもそも、新しいHTMLを起こすたびに、CSSをチェックしてその設定(クラス名とか)を探さなきゃならない。
しかし、そもそも適用するCSSが限定されるなら
top/index.htmlにおいては、参照されるCSSが、default.cssとtopPage.cssだけです。そして、HTMLにはCSSの為だけのclass属性なんて書かなくて済む。
ご回答いただきありがとうございます。
今作成しているcssには無駄が多く、class名も似たような名前がたくさんあります。
でも内容はほとんど同じです。
でもこの考え方だとその無駄が省けるというわけですね。
No.1
- 回答日時:
>今はテーマやカテゴリーごとにcssを分けている
賢明な判断だと思います。
>利点、欠点などがあれば教えてください。
利点としては、テーマごとにCSSを用意すれば、HTMLを編集することなく
見た目を大幅に変更できることですね。いわゆるスキンという考え方です。
欠点は管理が面倒なこと、ただし一つのCSSにすべてまとめてしまっても
必ずしも管理は楽にはなりませんが・・・
ご回答いただきありがとうございます。
これはこれでいいんですね。
確かにあまりcssも増えすぎれば、該当するcssを探すのも大変ですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS Dreamweaver のテンプレートでの相対パスの設定について 2 2023/06/13 17:28
- HTML・CSS Chrome のキャッシュについて 3 2022/05/26 07:50
- Ameba(アメーバブログ) アメブロ テンプレート 1 2022/06/27 00:54
- ホームページ作成・プログラミング ホームページ作成について。「ワードプレスではありません」。 3 2023/08/13 14:44
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS PrettierのHTMLの記述変更 linkタグ 1 2022/06/23 04:06
- HTML・CSS CSSファイルの日本語コメントが文字化けしてしまう 3 2022/12/26 15:50
- JavaScript jQueryでのレスポンシブが綺麗に動かない 3 2022/06/21 11:08
- ホームページ作成・プログラミング web制作(HP作成について教えてください) 閲覧ありがとうございます。 今、WEB制作の勉強をして 2 2023/04/13 07:23
- その他(プログラミング・Web制作) 次に、楽天のアジャイル就活に参加して、1日で内定を獲得できる。私は大企業に就職できる? 2 2022/04/17 13:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ホームページのテンプレートを...
-
gruntでsassの自動コンパイル
-
ビルダーでリンクの下線を消す...
-
DREAMWEAVER8のCSSシートについて
-
css IEmacだけに別指定
-
cssファイルの名称付け
-
外部cssの記述方法について
-
外部スタイルシートについて
-
定数の定義とかはできますか?
-
外部CSSを切り替えながらデ...
-
CSS・・・私には出来ないのでし...
-
CSSによる簡易な複数言語対応に...
-
スマホとPCの表示をクリックで...
-
プリントに対応したスタイルシート
-
bootstrapで、snsのアイコンの...
-
htmlでのHP作成について
-
htmlとcssを分けたい。
-
jspにcssを反映させるには
-
マイクロ(μ)の文字を半角で出...
-
outlook 文字を揃えたい。tab...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
cssファイルの名称付け
-
ディレクトリ構成【「common」...
-
サイトを作る時のcssファイルは...
-
Dreamweaver のテンプレートで...
-
jspにcssを反映させるには
-
cssで、ボタンのテキスト部分を...
-
エクセルファイルにCSSを読み込...
-
ワードプレスで太字が反映され...
-
ブラウザでプレビューでCSSが反...
-
どうすればなるんですか?
-
複数のhtmlで同じcssファイルを...
-
CSSとMacの関係
-
ドキュメントルートより上の階...
-
スタイルシート(CSSスタイル)...
-
CSSファイルを入れるフォルダは...
-
リンクについて
-
【CSS】スタイルやクラスがどの...
-
Bootstrapとbootswatchの設定
-
外部CSS。ページ全体の背景...
-
BODYタグのstylesrcって?
おすすめ情報