テーブルベースのデザインから完全な CSS への移行を始めている人として、style 属性を使用して要素を調整することは「不正行為」と見なされるのか、絶対にすべてのプレゼンテーションをスタイルシートに厳密に含める必要があるのか 疑問に思っています。
12 に答える
この 1 つの特定の要素のスタイルを微調整するだけで、他には何もしたくないことが確実にわかっている場合があります。
そのような場合、インライン スタイル属性を喜んで使用できます。 しかし、将来のある時点で、実際には同じスタイルを別のものに適用する必要があり、自分が間違っていたことに気付くでしょう。
そこに行って、それをしました。8-)
style 属性を使用することもできますが、CSS を使用するポイントは、1 つのファイルに変更を加え、サイト全体に影響を与えることです。できるだけ避けるようにしてください(古い習慣は死ぬのが難しい)
それは維持可能ではありません。私たち全員がそれをしました。最善の方法は、すべての調整をスタイルに組み込むことです。ほとんどの開発者が CSS について知らないことをお教えしましょう...一度に N 個のスタイルを使用できます。
たとえば、次のように色付けされたdiv
s の優れたスタイルがあるとしsomeDIVStyle
ます。
.someDIVStlye
{
background-color: yellow;
...
}
あなたはそれを使いたいのですが、ただbackground-color
青に調整したいだけです。多くの人がそれをコピーして貼り付け、変更を加えて新しいスタイルを作成します。ただし、次のようなスタイルを簡単に作成します。
.blueBackground
{
background-color: blue;
}
次のように適用します。
<div class="someDIVStyle blueBackground">...
一番右にあるスタイルは、その前のスタイルのプロパティを常にオーバーライドします。ニーズに合わせて、一度に多数のスタイルを使用できます。
スタイルシートにスタイル情報を保持するのが最善であるという他のいくつかのポスターに同意します。CSS はすぐに複雑になる傾向があるため、その情報を 1 か所にまとめておくと便利です (使用されているスタイルを確認するために HTML とスタイルシートを行き来する必要はありません)。
少し的外れなヒント: IE8 で F12 を押すと、閲覧中の Web ページの要素のスタイルを検査できる優れたツールが表示されます。Firefox では、FireBug が同じことを行います。スタイルの変更が要素にどのように影響するかを知りたい場合、これらの種類のツールは命の恩人です。
これは非常に「個人的な」質問です。私にとって「すべて」という言葉は非常に強い言葉です。CSS にほとんどのスタイルを含めるように最善を尽くす必要があります。しかし、それがあなたの生活を楽にするのであれば、時折スタイルを使うことができます.
一般に、特に複数回使用する場合は、スタイル シートにスタイルを含めることをお勧めしますが、style 属性を使用することは決して「ごまかし」ではありません。stackoverflow のソースをざっと見てみると、この例が数多く示されています。
はい、それは一種の不正行為ですが、少し不正行為をしたい場合はあなた次第です. :)
スタイル シートにスタイルを含める基本的な考え方は、コンテンツをレイアウトから分離することです。style 属性を使用する場合でも、コンテンツ内でレイアウトが混在しています。
ただし、スタイルをクラスに簡単に移動できるため、それほどひどいことではありません。クラス名を作成したり、スタイルがどのようにカスケードされるかを心配したりすることなく、特定の要素にスタイルを簡単に設定できることは、開発中に非常に便利です。
style 属性が 1 つのページだけに固有のものであり、それが長く続くかどうか疑わしい場合は、運用コードで style 属性を使用することがあります。時折、時間がないという理由だけで、後で片付けることができます...
したがって、ときどきスタイル属性を使用する場合でも、すべてのスタイルをスタイル シートに含める必要があります。長期的には、コードの保守が容易になります。
他の人が言ったように、一般的に、いいえ。
ただし、完全に理にかなっている場合もあります。たとえば、今日、未知のファイル数を持つディレクトリから、ランダムな背景画像を div にロードする必要がありました。基本的に、クライアントはファイルをそのフォルダーにドロップでき、ランダムな背景画像の回転で表示されます。
私にとって、これは div でスタイル タグを動的に構築する明確な理由でした。
さらに、たとえば、Web フォームと組み込みコントロールを備えた .net フレームワークを使用している場合は、インライン スタイルが使用されていることがわかります。
はい、スタイル属性は一般的に嫌われています。テーブルベースから CSS メソッドに移行しているので、インライン スタイルを避けることを強くお勧めします。以前の投稿者が指摘したように、悪い習慣を断ち切るのは難しく、一時的な利便性のためにインライン スタイルを使用する習慣を身につけるのは間違いです。font タグの使用に戻ることもできます。本当に違いはありません。
そうは言っても、単純なインライン スタイルを使用することが理にかなっている場合もありますが、まずはスタイルシートを使用する習慣を身に付けてください。すべてをスタイルシートに入れることに慣れた場合にのみ、ショートカットを検討するようにしてください。
それが回答を投稿した全員の一般的なコンセンサスだと思います
特定のページにスタイル情報を配置する十分な理由がある場合があります。
たとえば、すべてのページ (旅行代理店など) に異なるヘッダーの背景を持たせたい場合、そのスタイル情報をその特定の要素 (より良いのは、ドキュメントのヘッダー) に配置する方がはるかに簡単です。その要素にすべてのページで異なるクラスを与え、それらすべてのクラスを外部スタイルシートで定義します。
style 属性には重要な用途が 1 つあります。それは、スタイルをプログラムで設定することです。DOM にはスタイル シートを操作するためのメソッドが含まれていますが、それらのサポートはまだむらがあり、要素の表示と非表示などの多くのタスクでは少し重いです。