QQ咨询 官方微信

添加微信好友

官方小程序

百度小程序

微信小程序

头条小程序

关于我们

PHPCMS

phpcms去掉编辑器img的style属性

 admin  2016-09-03 10:08:04
 phpcms v9 采用的编辑器是ckediter,通过这个编辑器上传图片的时候,会默认给图片添加一个style样式,来限制图片的宽和高!这本是好事,防止图片太大撑破页面!
  1. style="height: 479px; width: 800px;" 
同时,这也出现了一个棘手的问题,假设一个图片太大的时候,我们一般往往通过CSS来控制,比如:
  1. content img { max-width:680px; height:auto;} 
根据CSS的就近原则和继承原则,这个时候假设图片太宽,宽度是按照不超过680px走的,但是高达还是原来的800px,这就造成了 图片会变形!

还有另外一点,现在流行自适应式的网站,如果限制了宽高,造成本身的CSS无法控制,当用手机打开时候,图片因为太大造成页面不好看,所以现在必须要去掉自带的style中的宽和高,同时其他的style属性不能去掉!

第一种解决方案:修改js
通过上传图片的js来修改,恕我技术不行,一直不知道怎么改,网上有一个教程,竟然还收费,所以我放弃了使用第一种

第二种:通过正则表达式去掉style的height和width属性
(1)直接在模板处添加正则表达式
  打开\phpcms\templates\default\content\show.html添加代码:
  1. {php  
  2. $exp=Array("/height: .{0,6}/i""/width: .{0,6}/i"); 
  3. $exp_o=Array('','');  
  4. $content = preg_replace($exp,$exp_o,$content); 
把代码放到{$content}这样就可以去掉宽高的属性了,效果如下:
  1. <img src="http://localhost/sembang/uploadfile/2016/0902/20160902115818358.jpg" style=" " /> 
(注:因为style中可能出现其他样式,不建议去掉style,去掉所有的style的方法是:
$content= preg_replace("/style=\\\.+?['|\"]/i",'‘,$content); )

(2)就是直接在\phpcms\modules\content\index.php中直接添加正则
这样的话直接输出来的{$content}就已经去掉宽和高了,
搜索:$this->db->table_name = $tablename;,把下边代码放到这一行的上面:
  1. $exp=Array("/height: .{0,6}/i""/width: .{0,6}/i");  
  2. $exp_o=Array('','');   
  3. $content = preg_replace($exp,$exp_o,$content);  
这样就可以前台直接调用{$content}了

OK 大功告成!(如果有错误,请多多指教)

本文出自建站之家:http://www.pweb123.com/cms/zhcms/phpcms/show_671.html
¥ 打赏
×
如果您觉得文章帮助了您就打赏一下吧
非常感谢你的打赏,我们将继续分享更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

本文《phpcms去掉编辑器img的style属性》发布于石头博客文章,作者:admin,如若转载,请注明出处:https://www.pweb123.com/cms/phpcms/671.html,否则禁止转载,谢谢配合!

文章点评

我来说两句 已有0条评论
点击图片更换

添加微信好友

添加微信好友

微信小程序

百度小程序