关于prox嵌入css与浏览器载入css的差别

新手入门、经验交流

Moderator: cre

Forum rules
  • 软件自带帮助是最好的入门教程,请仔细阅读;在您掌握最基本知识前,我们没法帮助您
  • 提问前请先查阅软件帮助文件和论坛相关讨论
  • 查阅软件帮助和论坛相关讨论即可解决的问题帖将直接删除,以免浪费他人时间
  • 请学会如何提问,尽量将问题描述清楚,不明确的提问将被直接删除
Post Reply
不夜侯
Posts: 101
Joined: Jul 29 2009, 16:22

关于prox嵌入css与浏览器载入css的差别

Post by 不夜侯 »

对网站www.yingzheng.com我做了一个规则:

Code: Select all

[Patterns]
Name = "yingzheng_css"
Active = TRUE
URL = "$TYPE(htm)www.yingzheng.com/"
Limit = 10
Match = "<start>"
Replace = "<link href="http://local.ptron/user_yingzheng.css" rel="stylesheet" type="text/css" />\n"

user_yingzheng.css的内容如下:

Code: Select all

body{background:#D3E8F2 !important;}
td.plc,td.plc plm{background:#D3E8F2 !important;}
div.pob{background:#f2f2F2 !important; height:36px !important;}
#hd h2{font-size: 26px !important;}
td.t_f { font-size: 18px!important;}
div#pt{background:#fff !important;}
h1,h2,h3,h4,h5,h6{ font-size: 15px!important;}
.pls{ font-size: 12px!important;width:180px!important;}
.pls dd{ width:80px!important;}
.pls div.pi div.authi{ font-size: 15px!important;}
规则生效后发现了小问题。
在具体帖子的页面,点击快速回贴的“添加附件”及某人发言下的“回复”按钮时,均无反应。
随便例举:http://www.yingzheng.com/forum.php?mod= ... a=page%3D1
2011-10-22_144052.jpg
2011-10-22_144052.jpg (37.34 KiB) Viewed 16017 times
但如果以opera浏览器的站点首选项中载入此user_yingzheng.css,在prox中停止yingzheng_css规则,则没有以上问题发生。
刚开始我以为是css写的不正确,但在查找原因中发现,即使user_yingzheng.css内容为空白,只要是prox中嵌入 yingzheng_css规则 ,就会有此问题发生。
也与prox中其他规则无关。
请问这是什么原因?谢谢!
不夜侯
Posts: 101
Joined: Jul 29 2009, 16:22

Re: 关于prox嵌入css与浏览器载入css的差别

Post by 不夜侯 »

看不太懂啊,有点专业。
请教怎样解决?
因为几个浏览器想共用一个规则嵌入css,方便维护。
不夜侯
Posts: 101
Joined: Jul 29 2009, 16:22

Re: 关于prox嵌入css与浏览器载入css的差别

Post by 不夜侯 »

继续排查原因,发现嵌入css与sidki中Replace blank/new规则似乎有冲突,天涯页面也有此现象。
停用Replace blank/new规则后暂时正常。
User avatar
phoenix
Site Admin
Posts: 529
Joined: Dec 29 2007, 16:27

Re: 关于prox嵌入css与浏览器载入css的差别

Post by phoenix »

既然你是用的sidki的规则:

1、不停用Replace blank/new规则,不嵌入css,那2个网站正常吗?
2、如果正常,试试用sidki的方式嵌入css

Code: Select all

## insert user stylesheet                       $SET(sUserCSS=CSS_NAME)
##
## By default, CSS_NAME can be one of the three included W3C core styles:
## chocolate, oldstyle, or steely.
##
## You may also write your own CSS, prefix the filename with "user-", e.g.
## "user-janedoe.css", copy it to "html\sidki_h_xxxx-xx-xx\CSS\", and invoke
## it with an entry like:
## mysite.com/                                  $SET(sUserCSS=janedoe)
## ----------------------------------------------------------------------------
不夜侯
Posts: 101
Joined: Jul 29 2009, 16:22

Re: 关于prox嵌入css与浏览器载入css的差别

Post by 不夜侯 »

我没有完全用sidki的规则。
那两个网站不停用Replace blank/new规则,不嵌入css,如果只是替换源代码,是正常的。天涯BBS页面启用Replace blank/new规则及嵌入css,在回帖时“发表”按钮失效。
发现Replace blank/new规则中url match部分($TYPE(htm)|$TYPE(js),修改成$TYPE(htm),再嵌入css就正常。
User avatar
cre
Moderator
Posts: 91
Joined: May 26 2009, 00:34

Re: 关于prox嵌入css与浏览器载入css的差别

Post by cre »

Code: Select all

<a>...: Replace blank/new
Bounds = "<a(rea)+\s*>|<form\s*>|<base\s*>"
怎么会跟css冲突?你自己也要标准啊!

w3c标准
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。
这很"专业"么?汗..
你dbug看你的<start>插到哪了?

http://www.w3school.com.cn/tags/tag_link.asp

HTML <link> 标签
定义和用法
<link> 标签定义文档与外部资源的关系。
<link> 标签最常见的用途是链接样式表。
浏览器支持
在用于样式表时,<link> 标签得到了几乎所有浏览器的支持。但是几乎没有浏览器支持其他方面的用途。
提示和注释:
注释:link 元素是空元素,它仅包含属性。
注释:
此元素只能存在于 head 部分不过它可出现任何次数。

随便搜下就可看到很多css不在head内格式无效的问题.

ps:
opera 有时 <!DOCTYPE>前有注释可忽略,有时格式也要乱,看网站了.[仅仅是添加个<!-- ... -->]
ie <!DOCTYPE>前有东西可能导致大问题...
不夜侯
Posts: 101
Joined: Jul 29 2009, 16:22

Re: 关于prox嵌入css与浏览器载入css的差别

Post by 不夜侯 »

谢谢cre指点,原因应该是你所说的,<start>插入css造成问题。修改后没问题了,与Replace blank/new也不相关。
不过我前面是那样一个一个规则停用查找解决的,有点不知所以然。 :D
再次谢谢。

Code: Select all

[Patterns]
Name = "yingzheng_css"
Active = TRUE
URL = "$TYPE(htm)www.yingzheng.com/"
Limit = 10
Match = "<head>"
        "$STOP()"
Replace = "<head>\r\n"
          "<link href="http://local.ptron/user_yingzheng.css" rel="stylesheet" type="text/css" />\n"

Post Reply