特定のウェブページにstyle要素などを追加する

特定のウェブページのみで利用するCSSなどは、他のページで利用することはない。特定ウェブページにstyle要素で指定すれば他のページに影響することがなく、僅かであるが読み込みも速くなるだろう。

例えば、サイトマップのページが格納されているフォルダ名「サイトマップ」の場合だけに使用する背景画像を、Base64でstyle要素に追加する。

予めsitemap_folderを指定し、mt:FolderLabelの値と比較する。

<mt:SetVar name="sitemap_folder" value="サイトマップ">
<mt:SetVarBlock name="Folder"><$mt:FolderLabel$></mt:SetVarBlock>
<mt:If name="sitemap_folder" like="$Folder">
<style>
.main-unit  ul.tree li {
    background: url(data:image/png;base64,エンコードした文字列);
}
</style>
</mt:If>

この例では、アーカイブパスを%c/%iにしている。(その他の設定の場合は変更が必要。適用できないこともあります。)

Posted