微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css – 使用setText和setUrl在SWT浏览器中进行不同的渲染

我正在尝试编写一个 Eclipse插件,将一些信息显示为HTML页面.为此,我想使用SWT browser小部件.问题是,当我通过setText设置浏览器的内容时​​,nth-child选择器不起作用,但是当我通过setUrl设置完全相同的内容时(“file:// …,它们正常工作.为什么渲染是不同的,如何使用setText实现与setUrl相同的渲染?

我正在使用SWT.NONE创建浏览器,因为我不想强迫用户安装Safari或Firefox.

这是问题可重现的HTML:

<!doctype html><html><head>
<style type="text/css">
    div:nth-child(2n) { background-color: #f00; }
</style>
</head><body>
    <div>1</div>
    <div>2</div>
    <div>3</div>
</body></html>

解决方法

广泛使用浏览器的setText()方法后,我没有看到任何类似于你所描述的行为.

这可能是本地Intranet怪癖模式/兼容模式问题吗? IE根据内容的来源认其呈现引擎的方式不同 – 认情况下,当呈现内部网内容与互联网内容(并且本地文件系统上的内容被视为内部网内容)时,它的行为会有所不同.这是我的回忆,无论如何,所有我请记住,除非您明确设置兼容性标题,否则会有相当数量的伏都教.

添加以下元标记是否会更改行为?

<Meta http-equiv="X-UA-Compatible" content="IE=9" />

此外,您是否在使用setText()添加的HTML中定义了适当的DOCTYPE?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。