避免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 相关文章推荐
桌面中心(三)修改数据库
Oct 09 PHP
php 安全过滤函数代码
May 07 PHP
php header Content-Type类型小结
Jul 03 PHP
PHP中使用foreach和引用导致程序BUG的问题介绍
Sep 05 PHP
php判断终端是手机还是电脑访问网站的思路及代码
Apr 24 PHP
深入理解用mysql_fetch_row()以数组的形式返回查询结果
Jun 05 PHP
PHP 5.3新增魔术方法__invoke概述
Jul 23 PHP
PHP文件上传类实例详解
Apr 08 PHP
thinkphp框架下404页面设置 仅三步
May 14 PHP
PHP SPL 被遗落的宝石【SPL应用浅析】
Apr 20 PHP
PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
Apr 20 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
Sep 10 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安全技术之 实现php基本安全
2010/09/04 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
ThinkPHP之用户注册登录留言完整实例
2014/07/22 PHP
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
php使用curl代理实现抓取数据的方法
2017/02/03 PHP
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
PHP-FPM和Nginx的通信机制详解
2019/02/01 PHP
PHP错误提示It is not safe to rely on the system……的解决方法
2019/03/25 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
2019/05/13 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
JS实现一键回顶功能示例代码
2013/10/28 Javascript
JavaScript中pop()方法的使用教程
2015/06/09 Javascript
JQuery标签页效果实例详解
2015/12/24 Javascript
Bootstrap所支持的表单控件实例详解
2016/05/16 Javascript
node.js 动态执行脚本
2016/06/02 Javascript
关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)
2016/12/14 Javascript
BootStrap便签页的简单应用
2017/01/06 Javascript
初学者AngularJS的环境搭建过程
2017/10/27 Javascript
nodejs实现简单的gulp打包
2017/12/21 NodeJs
JS实现的字符串数组去重功能小结
2019/06/17 Javascript
解决 window.onload 被覆盖的问题方法
2020/01/14 Javascript
在Uni中使用Vue的EventBus总线机制操作
2020/07/31 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
安装ElasticSearch搜索工具并配置Python驱动的方法
2015/12/22 Python
详解Python各大聊天系统的屏蔽脏话功能原理
2016/12/01 Python
机器学习的框架偏向于Python的13个原因
2017/12/07 Python
python 3利用Dlib 19.7实现摄像头人脸检测特征点标定
2018/02/26 Python
python实现图书馆研习室自动预约功能
2018/04/27 Python
Python将8位的图片转为24位的图片实现方法
2018/10/24 Python
Keras使用tensorboard显示训练过程的实例
2020/02/15 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
继承公证书样本
2014/04/04 职场文书
计算机售后服务承诺书
2014/05/30 职场文书
党小组评议意见
2015/06/02 职场文书
《秋思》教学反思
2016/02/23 职场文书
golang判断key是否在map中的代码
2021/04/24 Golang