-PR-
締切済み

掲示板などのCGIにおけるスタイルシートの記述方法

  • すぐに回答を!
  • 質問No.90396
  • 閲覧数132
  • ありがとう数3
  • 気になる数0
  • 回答数5
  • コメント数0

お礼率 87% (61/70)

IE5.5からは、スクロールバーの色も変更できるようになりましたよね。
それで、ぜひ掲示板等のCGIもバーの色を変更したいのですが、記述方法がわかりません。
HTMLの方は・・・

 body {
   scrollbar-3dlight-color:#79A2C6;
   scrollbar-arrow-color:#79A2C6;
   scrollbar-base-color:#E1EAF2;
   scrollbar-darkshadow-color:#ffffff;
   scrollbar-face-color:#E1EAF2;
   scrollbar-highlight-color:#ffffff;
   scrollbar-shadow-color:#79A2C6
  }
と、こんな感じで書いてるんですが、これをCGIのスクリプトの中に記述する場合、どのように変更すればいいのでしょうか・・・。
上記のソースをそのままスクリプトの中の該当個所にコピペしたらエラーが出てしまいました。
CGIに関しては、初心者というわけではありませんが配付されている物を借りてきてちょっといじれる程度です。
いろいろ自分でも調べては見たんですがまったく方法がわからずだるまさん状態(手も足も出ない)なので、わかる方、いらっしゃいましたら教えて頂けないでしょうか・・・。
宜しくお願い致します。
通報する
  • 回答数5
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全5件)

  • 回答No.1
レベル10

ベストアンサー率 35% (54/152)

CGIでブラウザにhtmlを出力する方法は、 通常のhtmlであれJavaScriptであれスタイルシートであれ、 何も方法は変わりません。 ただ単にprint文で出力するだけです。 「コピペ」という言葉がエラーの原因に思えますが、 そのままコピペっていったいどこにコピペしたんですか? print文の全くないところにコピペしたんですか? 通常htmlを出力する際は、一文一文 print ...続きを読む
CGIでブラウザにhtmlを出力する方法は、
通常のhtmlであれJavaScriptであれスタイルシートであれ、
何も方法は変わりません。
ただ単にprint文で出力するだけです。

「コピペ」という言葉がエラーの原因に思えますが、
そのままコピペっていったいどこにコピペしたんですか?
print文の全くないところにコピペしたんですか?
通常htmlを出力する際は、一文一文
print"html出力したい文字";
の様に記述するのが普通なので、ご質問のスタイルシートも一行ごとに
print "body{\n"
の様に書いていかなければなりません。
もっと楽な方法としては、

print <<"HTML";
body {
   scrollbar-3dlight-color:#79A2C6;
   scrollbar-arrow-color:#79A2C6;
   scrollbar-base-color:#E1EAF2;
   scrollbar-darkshadow-color:#ffffff;
   scrollbar-face-color:#E1EAF2;
   scrollbar-highlight-color:#ffffff;
   scrollbar-shadow-color:#79A2C6
  }
HTML

としてやれば大丈夫です。
適切な箇所にこの文を書けばちゃんと有効になるはずだと思います。
補足コメント
MARURI

お礼率 87% (61/70)

回答ありがとうございます。
今回、私が使おうと思ってDLしてきた掲示板用のCGIは、もともとリンクの設定やらテキストエリアの枠の設定やらでスタイルシートが使われていたのです。
だからスクリプトの中に
$style = <<"HTML";

<style type="text/css">
<!--
body,td{color : $text_color; font-size : 13px; }
a:link{color : $link_color; text-decoration : none; }
a:visited{color : $vlink_color; text-decoration : none; }
a:active{color : $alink_color; text-decoration : none; }
a:hover{color : $alink_color; text-decoration : underline overline blink; background-color : $table_border}

input,textarea { border-left:1px solid $input_border;
border-right:1px solid $input_border;
border-top:1px solid $input_border;
border-bottom:1px solid $input_border;
background-color : #ffffff; color : $input_color; }
.button{border-left:1px double $input_border;
border-right:1px double $input_border;
border-top:1px double $input_border;
border-bottom:1px double $input_border;
background-color : $input_border; color : #999999; }
hr{color : $hr}
-->
</style>

HTML
こんな感じでスタイルシートの設定がされていたので、-->と</style>の間の行に、質問欄に書いたソースを入れてみたんですが、エラーが出てしまいました。
何が間違っているんでしょうか・・・。
投稿日時 - 2001-06-15 02:01:45
関連するQ&A


  • 回答No.2
レベル10

ベストアンサー率 47% (88/185)

誤 $style = <<"HTML"; 正 $style = <<HTML; ↑クォートは要りません。 ...続きを読む
誤 $style = <<"HTML";
正 $style = <<HTML;

↑クォートは要りません。
お礼コメント
MARURI

お礼率 87% (61/70)

おはようございます。
早い時間に回答ありがとうございます。
言われたとおりに直してみたんですが、やっぱりエラー・・・。(>_<)
CGIの作者の方に聞くのが一番早い道なんでしょうか。
投稿日時 - 2001-06-15 07:12:22
  • 回答No.3
レベル10

ベストアンサー率 35% (54/152)

(1)$style = <<"HTML"; でも動きますのでそれが直接の原因ではないと思います。 (2)とりあえず、「-->と</style>の間の行」ではなく「-->よりも前(<!--よりは後ね)」に書いてください。     →これはただのhtmlの話なのでCGIエラーになるとは思えないので解決にならない気がしますが。 (3)あとはAs ...続きを読む
(1)$style = <<"HTML"; でも動きますのでそれが直接の原因ではないと思います。
(2)とりあえず、「-->と</style>の間の行」ではなく「-->よりも前(<!--よりは後ね)」に書いてください。
    →これはただのhtmlの話なのでCGIエラーになるとは思えないので解決にならない気がしますが。
(3)あとはAsciiモードで送信してるかどうか確認してください。
    →コピペする前は動いてましたか?

以上です。
補足コメント
MARURI

お礼率 87% (61/70)

おはようございます。
朝早くに回答ありがとうございます。
(2)ANo.#1での補足で私が書き間違っていました。
ソースを入れたのは、hr{color : $hr}と-->の間です。
$style = <<HTML;

<style type="text/css">
<!--
body,td{color : $text_color; font-size : 13px; }
a:link{color : $link_color; text-decoration : none; }
a:visited{color : $vlink_color; text-decoration : none; }
a:active{color : $alink_color; text-decoration : none; }
a:hover{color : $alink_color; text-decoration : underline overline blink; background-color : $table_border}

input,textarea { border-left:1px solid $input_border;
border-right:1px solid $input_border;
border-top:1px solid $input_border;
border-bottom:1px solid $input_border;
background-color : #ffffff; color : $input_color; }
.button{border-left:1px double $input_border;
border-right:1px double $input_border;
border-top:1px double $input_border;
border-bottom:1px double $input_border;
background-color : $input_border; color : #999999; }
hr{color : $hr}
 body {
   scrollbar-3dlight-color:#79A2C6;
   scrollbar-arrow-color:#79A2C6;
   scrollbar-base-color:#E1EAF2;
   scrollbar-darkshadow-color:#ffffff;
   scrollbar-face-color:#E1EAF2;
   scrollbar-highlight-color:#ffffff;
   scrollbar-shadow-color:#79A2C6
  }

-->
</style>

HTML
こんな感じの記述で間違ってないでしょうか。
(3)ファイルのアップロードはFFFTPを使っています。
いつもは「ファイル名で転送モード切替」なんですが、念の為アスキーモードにして転送してみたんですが、やっぱり動きませんでした。
スクロールバーの設定部分をコピペする前は正常に動いてました。
だからやっぱりこの部分の記述方法に問題がある、ということですよねぇ。
うむむ・・・。
知りもせんくせに無謀なことに挑戦してしまった私がいけないんでしょうか・・・。(泣)
投稿日時 - 2001-06-15 07:13:34
  • 回答No.4
レベル13

ベストアンサー率 29% (334/1115)

・最初の行の、 #!/nantoka/perl の部分を ホームページサービスから指定されたPerlのパスに設定しましたか? ・CGIとデータファイルの属性(パーミッション)を設定しましたか? ...続きを読む
・最初の行の、
#!/nantoka/perl の部分を
ホームページサービスから指定されたPerlのパスに設定しましたか?
・CGIとデータファイルの属性(パーミッション)を設定しましたか?
  • 回答No.5
レベル11

ベストアンサー率 31% (72/232)

Perlのエラーなら、サーバーのほうにエラーログが出ている可能性がありますが、チェックしてみましたか?(プロバイダの設定によります。)
Perlのエラーなら、サーバーのほうにエラーログが出ている可能性がありますが、チェックしてみましたか?(プロバイダの設定によります。)
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ