首页
社区
课程
招聘
[原创]Django Web 框架和 zTree jquery 插件中 CSS 冲突调试及解决
2013-9-12 18:57 6141

[原创]Django Web 框架和 zTree jquery 插件中 CSS 冲突调试及解决

2013-9-12 18:57
6141
最近想在使用 Django 框架的一个 Web 项目中使用 zTree jquery 插件(http://www.ztree.me/,感觉显示效果非常好,感谢作者!国人的荣耀!),发现显示有问题,如下图所示:



zTree demo 显示链接为:

http://www.ztree.me/v3/demo.php#_102

简单测试了下发现 zTreeStyle.css 和 Django  中的 modern.css 冲突。框架中 “metrouicss” 这个类选择器是加在了 body 上:
        <BODY class="metrouicss">

参考作者在 blog 上给出的 zTree DOM 结构:



在页面异常元素中右键点击“审查元素”调试分析。
li 内的第一个 span 对应着父节点的 +/- 号,应该使用如下样式:

.ztree li span.button.root_open{background-position:-92px -54px; width:18px; height:18px}

可在 Properties 窗口中看到的 width * height 确是 90px * 32px。



从 “Matched CSS Rules” 开始往下看,发现了如下样式定义:

        .metrouicss .button {
                font-family: 'Segoe UI', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;
                font-weight: 400;
                font-size: 9pt;
                font-smooth: always;
                line-height: 11pt;
                font-size: 14px;
                padding: 4px 12px;
                line-height: 20px;
                vertical-align: middle !important;
                min-width: 90px;
                min-height: 32px;
                ...
        }

zTree 定义中的 被 width, height Django CSS 中的 min-width, min-height 覆盖了。在zTreeStyle.css 中如下几处定义中:

.ztree li span.button.chk {width:13px; height:13px;  margin:0 3px 0 0; cursor: auto}
.ztree li span.button.switch {width:18px; height:18px}
.ztree li span.button {line-height:0; padding:0; margin:0; width:16px; height:16px;...}

加入 “min-width:1px; min-height:1px;” 屏蔽掉 “.metrouicss .button” 中的对应值,然后测试一下。本来以为这样就可以了,可还是有问题,如下图所示:



文件夹图标之后多了点东西,是 “zTreeStandard.png” 图片中的一部分。同样用以上方式调试,发现是 “padding” 设置被覆盖导致的。zTreeStyle.css 中的设置为 “.ztree * {padding:0;”,有些被框架中的如下设置覆盖了:

        .metrouicss .button {
                ...
                padding: 4px 10px;
                position: relative;
                ...
        }

在 zTreeStyle.css 中的相关位置加上 “padding:0;”,问题就解决了。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

上传的附件:
收藏
点赞3
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回