
smartyのtmpファイルにスタイルシートの内容を書いた場合、{literal}{/literal}で囲う必要がありますが、逆に囲わない場合、たとえばスタイルシートの内容にsmarty変数を当てはめたることは可能でしょうか?
たとえば、以下のような感じです。
<style type="text/css">
{literal}
/* this is an intersting idea for this section */
.madIdea{
border: 3px outset #ffffff;
margin: 2 3 4 5px;
{/literal}
background-color: {$abc};
{literal}
}
{/literal}
</style>
例がしょぼいですが、上の例だと、 background-colorを{$abc}で当てはめています。
こんなことは通常smartyでは可能でしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
別に時間が掛かる事でもないんだから、実験してみりゃいいじゃん。
少なくとも、5割程は可能だろうって予測してるんでしょ。
やってみてできたら、聞いてやるよりも身に付きますよ。
と思ってしまいましたが。
結論から言うと、できますよ。
私であれば
<div class="madIdea" style="background-color: {$abc};">
と変化するものだけは、タグに直接書きますが。
No.1
- 回答日時:
ものぐさに書いちゃうと{$abc}がエスケープされますから
対応策
・{ldelim} {rdelim}でがんばる
・スタイルシートやjavascript部分は出来るだけscriptタグやlinkタグを使い、別のファイルとして管理する
・CSSやJavascript部分をまとめて出力したい文字としてソースコードなどに記述してしまう。
$cssLists = "td{ background-color: $tdBgcolor1 ; }";
$smarty->assign('setStyle1', $cssLists); // みたいな
出来るだけ外のファイルに記述するか
{ldelim}あたりでがんばった方が、
HTMLソースがバラバラにならない気がします。
大技 デリミタそのものを変更してしまう。
$smarty->left_delimiter = '{{{'; // 後は({とか<!---とか
$smarty->right_delimiter = '}}}';
-- 変更後の書き方↓ --
<style type="text/css">
{{{** 波括弧が3連続で現れてる場所だけがsmarty変数だと解釈される **}}}
{
/* this is an intersting idea for this section */
.madIdea{
border: 3px outset #ffffff;
margin: 2 3 4 5px;
background-color: {{{$abc}}};
}
}
</style>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
訪問済のリンク色を変えない方法
-
smartyテンプレートの<style></...
-
<pre>~</pre>について
-
点線や破線を引くには
-
html の divとtable の役割
-
含む含まないという概念自体の...
-
html/cssの、navを2段にする...
-
htmlの文字が縦書きになる
-
CSSで改行後の行間調整
-
リンクを知らせる手のマークが...
-
疑似クラス :activeが効きません
-
画像イメージの上下左右、欲し...
-
CSS(0の単位)について
-
<h1>、<h2>と<p><div>の行間を...
-
ボタンをセル内一杯に表示させ...
-
外部スタイルシートで定義した...
-
htmlのolやulなどlistにtitleや...
-
検索結果がツリー状に表示され...
-
Django 明細行にてボタンを押下...
-
グリッドレイアウトで"auto-fit...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<pre>~</pre>について
-
カラープレーンってなんですか?
-
訪問済のリンク色を変えない方法
-
<form <input type="text"の枠...
-
HRタグ 枠線を透明にするには?
-
リンクの下線を消す
-
Pandas の groupby後の要素の参...
-
プログラミング言語 R グラフ
-
CSSでクラスのエイリアス(include)
-
マウスオーバーでの反応速度が遅い
-
ホームページビルダー11でリ...
-
テキストエリア送信の際の文字...
-
smartyテンプレートの<style></...
-
JavaScriptで任意の文字の色を...
-
CSSのtext-decoration: none;が...
-
オンマウスについて。
-
点線や破線を引くには
-
同ページ内のリンク下線が消えない
-
白い文字と黒い文字を出すため...
-
リンクの下線について
おすすめ情報