3

Web サイトとスタイル シートを完成させましたが、2 つ目のスタイル シート (other.css) を作成しました。私がやろうとしているのは、ホームページに「normal.css」と「other.css」の 2 つのリンクを作成することです。したがって、基本的には、ユーザーが 2 つのスタイルから選択できるようにしたいと考えています。元のページをすべて複製し、名前に「2」を追加しました。また、other.css を作成してこれらのページで参照しました。「2」ページはすべて代替レイアウトを正常に表示しますが、ユーザーにスタイルを切り替える方法がわかりません...何か助けてください。

NB 私の html はまったく変更されていません。私は css ファイルを変更しているだけです。

デイブ

4

3 に答える 3

0

良い質問。答えは、使用しているサーバー側のテクノロジによって大きく異なります。たとえば、私が普段使っている Google App Engine では、生成された HTML のヘッダーの一部を別の CSS ファイルを指すように変更するだけです。しかし、それは静的な HTML ファイルではありません。

CSS Zen Gardenは、異なるスタイルシートで表示された同じ HTML ファイルを説明する Web サイトです。たぶん、そこからこれを行う方法のいくつかのアイデアを得ることができます。スタイルが異なるページは、同じ HTML ソースを持っていても、静的な .html ページではないことがわかります。

于 2012-04-29T17:25:32.837 に答える
0

この W3C のページでは、その方法を説明するだけでなく、代替のスタイルシート自体もいくつかあるので、実際に動作をテストできます。

ほとんどのブラウザーでは、ユーザーは View → Page Style などでスタイルシートを切り替えることができます。必要なのは、メニュー バーが表示されることだけです...

于 2012-04-29T17:45:13.397 に答える
0

サーバーに php がある場合、Cookie に基づいてスタイル シートを変更できます。次のコードが機能します。

if ($_COOKIE['style'] == '1') {
echo '<link rel="stylesheet" href="normal.css" type="text/css" />';
}
elseif ($_COOKIE['style'] == '2') {
echo '<link rel="stylesheet" href="other.css" type="text/css" />';
}
else {
echo '<link rel="stylesheet" href="normal.css" type="text/css" />';
}

ページの下部にリンクを追加: スタイルの変更

changestyle.php ページには、次のものがあります。

if ((isset($_COOKIE['style'])) AND ($_COOKIE['style'] == '1')) {
setcookie(style,2) 
}
elseif ((isset($_COOKIE['style'])) AND ($_COOKIE['style'] == '2')) {
setcookie(style,1) 
}
else {
setcookie(style,2) 
}
于 2012-04-29T19:17:46.663 に答える