避免Smarty與CSS語法沖突的方法
本文實例講述了避免Smarty與CSS語法沖突的方法。分享給大家供大家參考。具體分析如下:
熟悉CSS的人很快就會發(fā)現(xiàn)Smarty和CSS的語法存在沖突,因為二者都需要使用大括號{}。如果簡單地將CSS標記嵌入到HTML文檔首部,將導(dǎo)致"不可識別標記"錯誤:
<html>
<head>
<title>{$title}</title>
<style type="text/css">
p{
margin::2px
}
</style>
</head>
...
不要擔心,因為我們有3種解決方案。
一、使用link標記從另一個文件中提取樣式信息:
<html>
<head>
<title>{$title}</title>
<link rel="stylesheet" type="text/css" href="css/default.css"/>
</head>
...
二、使用Smarty的literal標記將樣式表信息包圍起來
這些標記告訴Smarty不要解析該標記內(nèi)的任何內(nèi)容:
<html>
<head>
<title>{$title}</title>
{literal}
<style type="text/css">
p{
margin::2px
}
</style>
{/literal}
</head>
...
三、修改Smarty的默認定界符
可以通過設(shè)置center_delimiter和center_delimiter屬性來做到這一點:
<?php
require("Smarty.class.php");
$smarty=newSmarty;
$smarty->left_delimiter='';
$smarty->right_delimiter='';
...
?>
雖然3種解決方案都能解決問題,但其中第一種可能是最方便的,因為將CSS放在單獨的文件中是一種常見的實踐做法。此外,這種解決方案不需要修改Smarty的重要默認配置(定界符)。
希望本文所述對大家的php程序設(shè)計有所幫助。
相關(guān)文章
laravel按天、按小時,查詢數(shù)據(jù)的實例
今天小編就為大家分享一篇laravel按天、按小時,查詢數(shù)據(jù)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
詳解PHP字符串替換str_replace()函數(shù)四種用法
str_replace() 函數(shù)以其他字符替換字符串中的一些字符(區(qū)分大小寫)。本文重點給大家介紹PHP字符串替換str_replace()函數(shù)四種用法,感興趣的朋友一起看看吧2017-10-10
PHP實現(xiàn)Javascript中的escape及unescape函數(shù)代碼分享
這篇文章主要介紹了PHP實現(xiàn)Javascript中的escape及unescape函數(shù)代碼分享,本文給出兩個實現(xiàn)版本,需要的朋友可以參考下2015-02-02

