カテゴリ | |
---|---|
サマリ | ページ背景色を設定したい |
バージョン | 1.4.2 |
投稿者 | ポリー |
状態 | 完了 |
投稿日 | 2004-02-03 (TUE) 12:07:50 |
例えば、ページを分類する際に 背景色で分かりやすく分類したい場合 一括で背景色を指定することは可能でしょうか? 単語の背景色(改行しない)はできたのですが 改行のある文章だと設定できませんでした。
ページ名で分類するのであれば、スキンの中でサブのcssファイルの指定をページ名によって分岐させれば可能です。
<link rel="stylesheet" href="./skin/default.ja.css" type="text/css" media="screen" charset="Shift_JIS" /> <?php if (ereg("~", $vars["page"]) == FALSE) { ?> <link rel="stylesheet" href="./skin/color1.css" type="text/css" media="screen" charset="Shift_JIS" title="color1" /> <?php } else { ?> <link rel="stylesheet" href="./skin/color2.css" type="text/css" media="screen" charset="Shift_JIS" title="color2" /> <?php } ?>
「~」の部分は正規表現で指定。ここでは例として2つに分岐してますが、case文を使えばいくつにも分岐できます。
早速のお返事ありがとうございます。使い方として、スタイルシートではなく、ページの作成(編集)時に背景色をつけて分類したいのですが、可能でしょうか?
登録時や凍結時に、背景色で分類してユーザーに分かりやすくしたいと思っております。
ページが凍結されているかどうかは$is_freezeの値で判定できますので、条件分岐の判定に$is_freezeを使えばCSSを切り替えることが可能です。
<link rel="stylesheet" href="./skin/default.ja.css" type="text/css" media="screen" charset="Shift_JIS" /> <?php if ($is_freeze) { ?> <link rel="stylesheet" href="./skin/color1.css" type="text/css" media="screen" charset="Shift_JIS" title="color1" /> <?php } else { ?> <link rel="stylesheet" href="./skin/color2.css" type="text/css" media="screen" charset="Shift_JIS" title="color2" /> <?php } ?>
color1.cssには凍結ページの背景色を指定したCSS、color2.cssには非凍結ページの背景色を指定したCSSを。
reimyさんどうもありがとうございます。解決しました。
<?php switch($vars['page']){ case 'xx'; }?> <link rel="stylesheet" type="text/css" href="common/css/skin/xx_style.css" media="screen" charset="Shift_JIS" title="color-xx" /> <?php{ case 'yy'; }?> <link rel="stylesheet" type="text/css" href="common/css/skin/yy_style.css" media="screen" charset="Shift_JIS" title="color-yy" /> <?php default: ?> <link rel="stylesheet" type="text/css" href="common/css/import.css" media="screen" charset="Shift_JIS" />
-- 中嶋 2010-08-31 (火) 17:08:26
<?php switch($vars['page']){ case 'xx'; } echo '<link rel="stylesheet" type="text/css" href="common/css/skin/xx_style.css" media="screen" charset="Shift_JIS" title="color-xx" />'; { case 'yy'; } echo '<link rel="stylesheet" type="text/css" href="common/css/skin/yy_style.css" media="screen" charset="Shift_JIS" title="color-yy" />'; default: echo '<link rel="stylesheet" type="text/css" href="common/css/import.css" media="screen" charset="Shift_JIS" />'; ?>になってしまいますよ。({と}の数や位置がおかしいので、switchの中にcase 'yy'とdefault がいない状態)
<?php switch($vars['page']){ case 'xx': ?> <link rel="stylesheet" type="text/css" href="common/css/skin/xx_style.css" media="screen" charset="Shift_JIS" title="color-xx" /> <?php break; case 'yy': ?> <link rel="stylesheet" type="text/css" href="common/css/skin/yy_style.css" media="screen" charset="Shift_JIS" title="color-yy" /> <?php break; default: ?> <link rel="stylesheet" type="text/css" href="common/css/import.css" media="screen" charset="Shift_JIS" /> <?php } ?>とすれば、とりあえずは動くはず。 -- 2010-08-31 (火) 18:59:38
<link rel="stylesheet" href="common/css/import.css" type="text/css" media="screen" charset="Shift_JIS" /> <?php if (ereg("XX", $vars["page"]) == TRUE) { ?> <link rel="stylesheet" href="common/css/skin/XX_style.css" type="text/css" media="screen" charset="Shift_JIS" title="color-XX" /> <?php } elseif (ereg("YY", $vars["page"]) == TRUE) { ?> <link rel="stylesheet" href="common/css/skin/YY_style.css" type="text/css" media="screen" charset="Shift_JIS" title="color-YY" /> <?php } else { ?> <link rel="stylesheet" href="common/css/import.css" type="text/css" media="screen" charset="Shift_JIS" title="color-default" /> <?php } ?>