避免Smarty与CSS语法冲突的方法


Posted in PHP onMarch 02, 2015

本文实例讲述了避免Smarty与CSS语法冲突的方法。分享给大家供大家参考。具体分析如下:

熟悉CSS的人很快就会发现Smarty和CSS的语法存在冲突,因为二者都需要使用大括号{}。如果简单地将CSS标记嵌入到HTML文档首部,将导致"不可识别标记"错误:

<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不要解析该标记内的任何内容:

<html> 
<head> 
<title>{$title}</title> 
{literal} 
<style type="text/css"> 
p{ 
margin::2px 
} 
</style> 
{/literal} 
</head> 
...

三、修改Smarty的默认定界符

可以通过设置center_delimiter和center_delimiter属性来做到这一点:

<?php 
require("Smarty.class.php"); 
$smarty=newSmarty; 
$smarty->left_delimiter=''; 
$smarty->right_delimiter=''; 
... 
?>

虽然3种解决方案都能解决问题,但其中第一种可能是最方便的,因为将CSS放在单独的文件中是一种常见的实践做法。此外,这种解决方案不需要修改Smarty的重要默认配置(定界符)。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
用PHP调用数据库的存贮过程!
Oct 09 PHP
PHP EOT定界符的使用详解
Sep 30 PHP
ionCube 一款类似zend的PHP加密/解密工具
Jul 25 PHP
php中获取指定IP的物理地址的代码(正则表达式)
Jun 23 PHP
php数组声明、遍历、数组全局变量使用小结
Jun 05 PHP
php按单词截取字符串的方法
Apr 07 PHP
PHP实现简单爬虫的方法
Jul 29 PHP
Symfony2安装的方法(2种方法)
Feb 04 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
Nov 20 PHP
PHP对象实例化单例方法
Jan 19 PHP
老生常谈PHP 文件写入和读取(必看篇)
May 22 PHP
php微信公众号开发之欢迎老朋友
Oct 20 PHP
实现PHP+Mysql无限分类的方法汇总
Mar 02 #PHP
Java和PHP在Web开发方面对比分析
Mar 01 #PHP
php中return的用法实例分析
Feb 28 #PHP
php多次include后导致全局变量global失效的解决方法
Feb 28 #PHP
Windows7下的php环境配置教程
Feb 28 #PHP
php数组使用规则分析
Feb 27 #PHP
php中stdClass的用法分析
Feb 27 #PHP
You might like
如何使用PHP实现javascript的escape和unescape函数
2013/06/29 PHP
javascript 兼容所有浏览器的DOM扩展功能
2012/08/01 Javascript
多个js与css文件的合并方法详细说明
2012/12/26 Javascript
6款经典实用的jQuery小插件及源码(对话框/提示工具等等)
2013/02/04 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器
2013/06/21 Javascript
JQuery给元素绑定click事件多次执行的解决方法
2014/05/29 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
Javascript设计模式之装饰者模式详解篇
2017/01/17 Javascript
JS实现json的序列化和反序列化功能示例
2017/06/13 Javascript
jQuery实现对网页节点的增删改查功能示例
2017/09/18 jQuery
javascript 缓冲运动框架的实现
2017/09/29 Javascript
JS获取input[file]的值并显示在页面的实现方法
2018/03/09 Javascript
react组件从搭建脚手架到在npm发布的步骤实现
2019/01/09 Javascript
js实现移动端tab切换时下划线滑动效果
2019/09/08 Javascript
原生js 实现表单验证功能
2021/02/08 Javascript
python编程通过蒙特卡洛法计算定积分详解
2017/12/13 Python
Python构建网页爬虫原理分析
2017/12/19 Python
Python中一行和多行import模块问题
2018/04/01 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
Python使用Matlab命令过程解析
2020/06/04 Python
Saks Fifth Avenue澳洲/亚太地区:萨克斯第五大道精品百货店
2019/06/09 全球购物
澳洲本土太阳镜品牌:Quay Australia
2019/07/29 全球购物
美国狗旅行和户外用品领先供应商:kurgo
2020/08/18 全球购物
.NET初级开发工程师面试题
2014/04/18 面试题
Java中的类包括什么内容?设计时要注意哪些方面
2012/05/23 面试题
外贸业务员求职信范文
2013/12/12 职场文书
浙大毕业生自荐信
2014/01/26 职场文书
《去年的树》教学反思
2014/04/11 职场文书
实习协议书范本
2014/04/22 职场文书
批评与自我批评总结
2014/10/17 职场文书
2014公司年终工作总结
2014/12/19 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书
离开雷锋的日子观后感
2015/06/09 职场文书
理想国读书笔记
2015/06/25 职场文书
研究生学习计划书应该怎么写?
2019/09/10 职场文书
python实现手机推送 代码也就10行左右
2022/04/12 Python