近々、自身の事業用ホームページを作成しようと考えています。最近はCSSが主流と聞きますが、フレームやテーブルでは何か問題が有るのでしょうか。

回答の条件
  • 1人2回まで
  • 登録:2006/05/19 08:06:49
  • 終了:2006/05/20 05:11:09

回答(5件)

id:TomCat No.1

TomCat回答回数5402ベストアンサー獲得回数2152006/05/19 08:55:44

ポイント20pt

http://www.k3.dion.ne.jp/~outside/sitemap/stylesheets-what.html

旧来の方法に問題がある、ということよりも、

CSSを用いた方が様々な利点がある、

ということでお考えいただけばよろしいかと思います。

  

たとえばCSSを積極的に用いると、HTMLのソースが

とても単純で見やすくなります。

特にテーブルなどはいちいち

<table border=0 cellpadding=0 cellspacing=0><tr><td align=center>・・・・

などと、おまじないのごとき長々とした見栄えの指定を

そのたびに書いていかなければなりません。

これではセルの中のテキストを編集するのも大変です。

しかし、これをCSSでやるなら、HTMLの方では単に

<div id="なんとか">

で済んでしまいます。これはお手軽です。

もちろんこうしてHTMLをシェイプアップすると

表示速度も速くなります。

 

また、テーブルやフレームを使ってレイアウトすると、

段組など位置関係はHTMLの記述の順序に固定されてしまいますが、

CSSを使って段組すれば、工夫次第でHTMLを全くいじらず、

CSSの方を変えてやるだけで表示の位置関係を変えることが可能です。

これはメニューバーを右にしたり左にしたり

自由に出来るということですから、

最近流行りのレイアウトにはピッタリです。

 

その他にも様々な利点がありますが、サイト制作で見逃せないのは、

何と言ってもその管理のしやすさでしょう。

 

「見栄え」に関することは全てCSSに任せるという

確固とした設計思想に貫かれたサイトは、

「内容」と「見栄え」を全く別個のファイルで管理できるんです。

 

全てをHTMLで行おうとすると、ちょっとした見栄えの変更にも

内容の記述された本体をいじらねばなりませんから、

特にテーブルのレイアウトを変更する時などには、

ちょっとしたミスで大切なテキストまで

欠落させてしまったりすることがあります。

これはソースを直接いじる時だけでなく、

ホームページ作成ソフトのようなものを使っていても有り得ます。

 

しかし全ての見栄えをCSSに任せることにしてしまえば、

CSSはいくらいじろうが本体の内容には何の影響も与えません。

 

さらに各ページに共通のCSSファイルを適用すれば、

何の苦労もなく各ページに統一感あるデザインを与えられ、

そして一つのCSSファイルを変更するだけで

適用される全ページにそれを反映させることが出来ます。

背景画像一つ替えるにしても、HTMLだけでやっていたら、

これは大変な労力です。

 

そのほか、HTMLの仕様には無いことがCSSで実現できるとか、

従来はjavascriptを用いて書いていたマウスを乗せた時の挙動が

工夫次第でCSSで実現できるなど、CSSの利点はたくさん存在します。

 

そんなわけで、旧来のHTMLだけでやっていく「縛り」の中で

出来ることだけをする、というのならそれはそれでいいわけですが、

CSSを使えば格段に高度なことが手軽に行えるわけですから、

これから作るならCSSの活用だと。

そう考えていくことが適切ではないかと思われます。

id:kato-s No.2

kato-s回答回数91ベストアンサー獲得回数32006/05/19 09:22:30

ポイント20pt

フレーム使用の問題点

http://www.asahi-net.or.jp/~ax2s-kmtn/ref/html/hp7.html

※このページの一番下に書かれています。



テーブルの使用に関しては特に問題はないと思うのですが。

※CSSと組み合わせて利用されます。

id:k-rated No.3

k-rated回答回数17ベストアンサー獲得回数02006/05/19 09:23:29

ポイント20pt

教科書的には、HTML4.0(HTMLもバージョンアップがされていたのです)策定時に、そもそもHTMLは文書の構成要素(タイトルとか、章立てとか)をマークアップするもので装飾に使用すべきではないよねということになって、装飾はCSSで行うことを推奨する、また、フレームは将来的には仕様から消したいけど過去との互換性のために残しておくということになりました。TABLEも、そもそもの使用目的である表を記載する以外のレイアウトに使用すべきでないという考え方です。


でも、ネットの世界で教科書なんてどうでもいい話ですよね。で、実際にTABLE/FRAMEからCSSへ移行した体験からすると、下記のようなメリットがありました。

  • FRAMEの場合、検索エンジンから飛んできたユーザが迷子になりやすかった(FRAME内のページがそのまま見えてしまうため、メニューなどがない状態でブラウザに表示されることがあった)が、これがなくなった
  • TABLEを使用した場合よりも、レイアウトの自由度が増した
  • 複数画面のレイアウト変更がCSSファイルの変更のみで対応できるようになった
  • 検索エンジンで上位に表示されやすくなった

(例えば、HTML中には重要なコンテンツを先に、サイト内の全ページに共通のメニューは後に記述して、CSSの設定でメニューを画面上部や左に表示するなどといったことが可能になります。検索エンジンによってはHTMLの先に記載されているもののほうが重要視される場合もあるため、SEOの効果が発揮されます)


大部分のブラウザはFRAMEもサポートしていますし、TABLEでレイアウトを組んでもちゃんと表示してくれます。でも、CSSでレイアウトしたほうが洗練された見栄えになる(逆に言うと、FRAMEやTABLEだと野暮ったく、2~3年前のサイトに見える)ため、新規に作成するのであればCSSを使用するほうがいいのかなと思います。

id:kichidenseiken No.4

kichidenseiken回答回数154ベストアンサー獲得回数02006/05/19 09:48:39

ポイント20pt

ひとつとして、GoogleやYahooなどの検索に用いられている言葉を収集するロボットにとってフレームなどは邪魔になる可能性があります。

http://www14.plala.or.jp/kasatsts/index1.html

この中にも書かれています。

id:wizemperor No.5

wizemperor回答回数379ベストアンサー獲得回数522006/05/19 10:05:56

ポイント20pt

主にユーザビリティと(X)HTMLの意義から来る問題があります。

フレームに関しては利用者からすると大変不便なものです。

単にその場で見るだけならいいのですが、例えば誰かにそのページを教えたいとします。

しかし、ブラウザのアドレスバーにはメインフレームのURIが表示されるため、特定のページを誰かに知らせることができません。

仮にフレーム内のURIを教えても、他のフレームが表示されないので訪問者は不完全なページを見ることになります。

このように主に利用者側から見ると不便なことが多く、ユーザビリティに欠けますのでおすすめしません。

ちなみにXHTML 1.1ではフレームは廃止されています。


テーブルについては、表を示したい場合に使うことにはなんら問題はありません。

問題とされるのは、デザイン=見た目を整えるために使用する場合です。

これは本来の(X)HTMLの論理的なマークアップをすることによって文書としての価値を高める、との意義からははずれるので、現在ではCSSで行われるのが主流です。

また、テキストブラウザや音声ブラウザ等で閲覧する場合に正しい文書構造が保たれない可能性が高くなりますし、文書を再利用する際にも、まったく関係ないものがテーブルとしてマークアップされていることはデータとしての価値もなくなってしまいます。

CSSはブラウザ間の解釈の違いのため、うまくデザインできない場合があるためテーブルでデザインされているサイトもまだありますが、CSSだけでも十分対応できるので、今から敢えて時代に逆行する方法で作成される必要はないと思われます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません