• 締切済み

CSS @importからのスタイル適応について

CSS外部ファイルからのスタイル適応が出来ず困っています。 以下のスタイルをテーブルに適応させたいのです。 【スタイル(index.css)】 table.test{ background-color: #ffffff; } table.test td{ border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #000000; } 【以下のタグに適応】 <table cellspacing="0" cellpadding="0" class="test"> <tr> <td>AAA</td> </tr> <tr> <td>BBB</td> </tr> <tr> <td>CCC</td> </tr> </table> 【スタイル入力先】index.css 【読み込み方式】<link>によるbase.cssからの@import <link rel="stylesheet" type="text/css" href="css/base.css"> 更に、base.cssから@importでindex.cssを読み込んでいる環境です。 ******************** 適応されるとテーブルの「AAA」「BBB」「CCC」に点線のアンダーラインが表示されます。 しかしindex.cssに入力してもスタイルが適応されないのです…。 (※ちなみに拡張子はPHPです。HTMLではありません) 色々試すと以下の事が判明しました。 □直接タグにスタイルを入力すると適応される □<head></head>内にスタイルを入力し、Class指定しても適応される □試しに、base.cssに入力するとスタイルが正常に適応される ■しかし、index.cssにスタイル入力すると適応されない なぜ外部CSSファイル(@importからのCSSファイル)から適応されないのでしょうか? PHPなのが原因だったりもするのでしょうか…。 ご助力お願いします。

みんなの回答

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

内容を別の場所に書いて問題ないなら たぶん、importの失敗(importの構文やimportで指定しているindex.cssのパスの書き間違い)だと思います。

関連するQ&A

  • CSSの@importから一部のスタイルが読み込めない・・・。

    CSS外部ファイルから、一部のスタイルだけが適応されず困っています。 以下のスタイルをテーブルに適応させたいのです。 【スタイル(index.css)】 table.test{ background-color: #ffcc66; } table.test td{ border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #000000; } 【以下のタグに適応】 <table cellspacing="0" cellpadding="0" class="test"> <tr> <td>AAA</td> </tr> <tr> <td>BBB</td> </tr> <tr> <td>CCC</td> </tr> </table> 【スタイル入力先】index.css 【読み込み方式】<link>によるbase.cssからの@import <link rel="stylesheet" type="text/css" href="css/base.css"> 更に、base.cssから@importでindex.cssを読み込んでいる環境です。 【OS】windowsXP 【ブラウザ】IE6 ******************** 適応されるとテーブルの背景がオレンジ色になり、 テーブルの「AAA」「BBB」「CCC」に点線のアンダーラインが表示されます。 しかし、テーブルの背景はオレンジになるのですが、table.test td{}のスタイルだけ適応されません…。 他のindex.css内にあるタグは正常に読み込まれ適応されています。 (※ちなみに拡張子はPHPです。HTMLではありません) 色々試すと以下の事が判明しました。 □直接タグにスタイルを入力すると全て適応される □<head></head>内にスタイルを入力し、Class指定しても全て適応される □試しに、base.cssに入力するとスタイルが正常に全て適応される ■しかし、index.cssにスタイル入力するとtable.test td{}のみ適応されない なぜ外部CSSファイル(@importからのCSSファイル)から適応されないのでしょうか? PHPなのが原因だったりもするのでしょうか…。 ご助力お願いします。

    • ベストアンサー
    • HTML
  • CSSのtableについて【CSSが無かったのでHTMLで…。】

    <html> <head> <title>test</title> <style type="text/css"> <!-- table { border : 1px #000000 solid; text-align : center; } td,th { border : 1px #000000 solid; width : 100px; } --> </style> </head> <body> <table> <tr> <td rowspan="2"> 1 </td> <td> 3 </td> </tr> <tr> <td> 2 </td> </tr> <tr> <td colspan="2"> 3 </td> </tr> </table> </body> </html> このように入力をした場合、一番下にできるテーブル(3)2つ結合しているにもかかわらず、1つ分?の状態で文字がcenterになってしまいます。結合した(2つの)真ん中に表示させるにはどうしたらいいですか?? 教えてください☆

    • ベストアンサー
    • HTML
  • 2列目のみcssを適用させるには?

    <html> <head> <title>test</title> <style type="text/css"> table.test td+td { padding-left:1em; } </style> </head> <body> <table class="test" border=1> <tr><th>No</th><th>タイトル(この列だけ左からの距離を指定する)</th><th>その他</th></tr> <tr><td>1</td><td>bbb</td><td>1</td></tr> <tr><td>2</td><td>ccc</td><td>2</td></tr> </table> </body> </html> このソースだと2列目と3列目にcssが適用されてしまいます。 table.test td+td の部分は、okwaveからのコピペで見よう見まねでやってみたのですが どうすれば「2列目だけ」を指定できますか? このソースでの表示結果は画像の通りです。

    • ベストアンサー
    • HTML
  • CSS tdのクラスを一部分だけ外したい

    Aのテ-ブルが格子状になるようCSSで設定しました。 その中にBのテーブルを入れ、このテーブルは罫線なしで表示したいのですが、 テーブルAのtdの設定がどうやっても消えてくれないので困っています。 ▼試した事 ・テーブルBのクラスをborder-style:none ・テーブルBのクラスに白い罫線を付けてみる ・テーブルBにスタイルでnoder-style:none ▼ソース(簡略) .t-a{ border-top:solid 1px #C4772B; border-right:solid 1px #C4772B;} .t-a td{ border-bottom:1px solid #C4772B; border-left:1px solid #C4772B;} <table class="t-a"> <tr> <td>テーブルA</td> <td>テーブルA</td> </tr> <tr> <td>  <table>  <tr>  <td>テーブルB</td>  <td>テーブルB</td>  <td>テーブルB</td>  </tr>  <tr>  <td>テーブルB</td>  <td>テーブルB</td>  <td>テーブルB</td>  </tr>  </table> </td> </tr> <tr> <td>テーブルA</td> <td>テーブルA</td> </tr> </table> テーブルBのborder-style:noneが反映されなかったので、テーブルBのCSSは削除していまいました。 力を貸してください。

    • ベストアンサー
    • HTML
  • スタイルシートの書き方

    HPの中に以下のようなテーブルを並べて作っているのですが、後からまとめて編集しやすいようにCSSファイルを別に作ろうと思います。 自分であれこれ試してはいるのですが、スマートな(?)スタイルシートの書き方がいまいちわかりません。 どのように指定すればいいでしょうか? 因みに下のタグもかなり自己流な部分があるのではないかと思うので、おかしいところがあれば指摘してください。 よろしくお願いします。 ------------------------------------------------------ <table border="0" bgcolor="#000000" cellspacing="0" cellpadding="0"> <tr> <td> <table border="0" cellspacing="1" cellpadding="2" width="500"> <tr><td bgcolor="#ffffff" width="150">AAA</td><td>BBB</td></tr> </table> </td> </tr> </table>

    • ベストアンサー
    • CSS
  • テーブルの幅をデフォルトに戻すcssがわかりま

    <html> <head> <title>test</title> <style type="text/css"> table { width: 100%; } </style> </head> <body> <table border=1> <tr><td>No</td><td>table1</td></tr> </table> <table border=1> <tr><td>No</td><td>table2</td></tr> </table> </body> </html> このようなソースで二つ目のテーブルだけ table { width: 100%; } を適用しない方法はありますか? 実際はテーブルが複数あり 基本的には table { width: 100%; } をテーブルに設定したいのですが とあるテーブルのみテーブルの幅をデフォルトのサイズにしたいのです。 table { width: 100%; } で全てのテーブルに適用した後に クラスを使って該当のテーブルのみ デフォルトの値に戻す方法は有りますか? <table border=1 class="デフォルトに戻す"> <tr><td>No</td><td>table2</td></tr> </table> としたいのですが テーブルの幅をデフォルトに戻すcssがわかりません。 2つのテーブルの幅は指定したくありません。

    • ベストアンサー
    • HTML
  • thのスタイルを適用するにはどうすればいいでしょう

    <table border=1 class="test1"> の部分にclassを設定するだけで thのスタイルを適用するにはどうすればいいでしょうか? 理想としては添付画像の下のテーブルの様に thの部分だけスタイルを適用したいのですが 実際はテーブルのレコード数が多い為、 <th class="test2">を全てのthにつけるのを省略したいです。 なので、<table border=1 class="test1">の部分にthのスタイルを設定したいのですが table.test1 {font-size: 5em;} の部分はどのように記述すればいいでしょうか? 現在の table.test1 {font-size: 5em;} だとテーブルすべてに適用されてしまいます。 理想の表示は下のテーブルで 理想のソースは上のテーブルです。 ------------------ 以下ソース <html> <head> <style type="text/css"> table.test1 {font-size: 5em;} th.test2 {font-size: 5em;} </style> </head> <body> <table border=1 class="test1"> <tr><th>No</th><td>a</td></tr> <tr><th>No</th><td>a</td></tr> </table> <br> <table border=1> <tr><th class="test2">No</th><td>a</td></tr> <tr><th class="test2">No</th><td>a</td></tr> </table> </body> </html>

    • ベストアンサー
    • CSS
  • CSSでdiv内を下揃え

    CSSでdiv内を下揃えは出来ないものでしょうか? テーブルを使った時の以下の表現をCSSで表現したいです。 <TABLE border="0" height="200"> <TR> <TD>ここは上から●pxに画像配置</TD> </TR>  <TR> <TD valign="bottom">ここを下揃えで画像表示</TD> </TR> </TABLE> テーブルならすぐできるのですが… 下揃えの方法があれば教えてください。

    • ベストアンサー
    • CSS
  • HTML & CSS について質問です。

    HTML & CSS について質問です。 外部ファイルのスタイルシートに TABLE.test{ border-collapse:collapse; border-color:#000000; border-style: solid; } HTMLファイルに <TABLE ID="test"> <TR> <TD></TD><TD></TD> </TR> </TABLE> とした場合に外側の線は結合され黒色で表示されるのですが、 内側の線は灰色で表示されてしまいます。 全ての線を細線で表示したいと考えています。 アドバイスよろしくお願いたします。m(_ _)m

  • cssでテーブルの位置を設定するには?

    <table border="1" align="left">でテーブルの位置を競ってすることはできたのですが スタイルシートで行いたいです。 そもそも他のテーブルはすべて中央に寄せたいため、 table { margin-left: auto; margin-right: auto; } としています。 そのうえで、任意のテーブルのみ左に寄せて表示したいので table.test { align:left; } としたのですが、うまくいきません。 ---------------------------------------------------------- <html> <head> <title>test</title> <STYLE type="text/css"> table { margin-left: auto; margin-right: auto; width: 40%; } table.test { width: 80%; align:left; } </STYLE> </head> <body> <table border="1"> <tr><th>見出</th><th>見出</th></tr> <tr><td>セル</td><td>セル</td></tr> </table> <br><br><br> <table border="1" align="left"> <tr><th>見出</th><th>見出</th></tr> <tr><td>セル</td><td>セル</td></tr> </table> <br><br><br> <table border="1" class="test"> <tr><th>見出</th><th>見出</th></tr> <tr><td>セル</td><td>セル</td></tr> </table> </body> </html> ----------------------------------------------------- このコードだと、 table.test { width: 80%; align:left; } の、 width: 80%; の部分は認識されるようですが、align:left;は無視されます。 スタイルシートでテーブルの位置を設定する方法をご教授ください。

    • 締切済み
    • CSS