Rumah >php教程 >php手册 >PHP常规模板引擎中与CSS/JSON冲突的解决

PHP常规模板引擎中与CSS/JSON冲突的解决

WBOY
WBOYasal
2016-06-06 19:47:471275semak imbas

主要针对对象:Smarty/Dwoo 参考:http://developer.51cto.com/art/201009/224929.htm 其实以前都不怎么关注模板引擎,觉得没必要使用。但随着年龄的增加,代码洁癖越来越严重,才开始碰到这个问题。 Smarty和CSS/JS的语法存在冲突,因为二者都需要使用大括

主要针对对象:Smarty/Dwoo

参考:http://developer.51cto.com/art/201009/224929.htm

其实以前都不怎么关注模板引擎,觉得没必要使用。但随着年龄的增加,代码洁癖越来越严重,才开始碰到这个问题。

 

Smarty和CSS/JS的语法存在冲突,因为二者都需要使用大括号{}。虽然可以改Smarty的界定符,但你在一个现存系统中,去修改所有相关代码,是不划算的。

 

1. 避免同时出现

通过外部引用的方式避免。问题是避无所避。所以这种情况只适合少量简单的情况。

 

2. 修改Smarty界定符

 

2. 使用Smarty的literal标记将样式表信息包围起来

PHP常规模板引擎中与CSS/JSON冲突的解决

 
 
<title>{$title}</title> 
{literal}  
<styletypestyletype> 
p{  
margin::2px  
}  
 
{/literal}  
 </styletypestyletype>

PHP常规模板引擎中与CSS/JSON冲突的解决

PHP常规模板引擎中与CSS/JSON冲突的解决

<script type="text/javascript">
      function goods_show(id){<br /><br /><!--{literal}--><br /><br />art.dialog.open(url,{id:'select',title:'的:',width:760,height:380,padding: '10px'});<br /><br /><!--{/literal}-->
    }
</script>

PHP常规模板引擎中与CSS/JSON冲突的解决

 

第三种无疑是绿色环保的,在遇到冲突的地方,加上literal标记包裹。

该方案对Dwoo引擎同样有效。

 

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn