首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Openwave移动浏览器误解了CSS子选择器和后代选择器。

问Openwave移动浏览器误解了CSS子选择器和后代选择器。
EN

Stack Overflow用户
提问于 2010-06-28 04:18:29
回答 1查看 644关注 0票数 1

我正在设计一个网站,并在我的LG VX8360手机上测试,运行Openwave移动浏览器6.2.3.2。在我的站点上,很多事情看上去都不对,我注意到浏览器没有正确地处理CSS子选择器或后代选择器。我做了一个这样的页面:

代码语言:javascript
复制
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mobile test</title>
<style type="text/css">
div div {
    background: yellow}
</style>
</head>
<body>
<div>test 1 - this div should have no background</div>
<br>
<div><div>test2 - this div should have a yellow background</div></div>
</body></html>

我只希望第二台的背景是黄色的,但在我的手机上,两台都是黄色的。我能做些什么?有人知道什么解决办法吗?我看了谷歌,却找不到任何有用的东西。

编辑:我想补充一下,我是用“缓存控制:不转换”头来服务页面,所以我怀疑代理或代码转换器是否改变了任何东西。

我做了费利佩建议的一些测试。我看到了同样的事情,不管声明后是否有分号。我试着去掉样式元素,并将黄色背景放在内部测试2div中的样式属性中,一切都如期而至。我尝试添加"div {背景: red;}“,这两个div仍然是黄色的。我切换了测试1和测试2 div,两者都是黄色的。

另外,我尝试访问以下代码:

代码语言:javascript
复制
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mobile test</title>
<style type="text/css">
div {
    background: red;}
.foo div {
    background: yellow;}
</style>
</head>
<body>
<div>test 1 - this div should be red.</div>
<br>
<div class="foo"><div>test 2 - this div should be yellow.</div></div>
</body></html>

两个div都是红色的。我用id而不是类做了类似的事情,两个div都是红色的。

然后,我尝试将类放到内部div中,并使用"div.foo“或仅仅是".foo”的选择器来选择它,它工作得很好,大概是因为这不涉及子选择器或后代选择器。如果我用ids代替也是一样的。

我试着把字符集设置为ISO-8859-1,一切都是一样的,所以我认为这与问题无关。我去掉了元标签,一切都是一样的。

我尝试将CSS放在外部文件中。当我使用一个链接元素包括它时,我看到的结果和前面一样。如果我尝试使用@import来包含它,我就看不到任何样式。我的手机似乎无法访问使用@import引用的CSS文件。

不用说,这简直把我逼疯了。我做的测试越多,情况就越陌生。我能做些什么?

编辑2:当然可以买到一部新手机,但我正在尝试制作一个可以在任何类型的互联网设备上工作的网站。

编辑3:我看了本指南的移动CSS兼容性,却找不到任何关于我的浏览器的东西。我要去看看博客文章了。

编辑4:我无法找到任何全面、客观的信息,说明浏览器支持或不支持哪些特性,以及如何解决问题。如果这是一个晦涩、过时、不受欢迎的浏览器,我会忘记这个问题。然而,几天前,我走进Verizon的一家商店,在他们的一些手机上测试我的网站,我发现了相当多的全新手机,它们的浏览器版本似乎都是一样的,都有缺陷。

EN

回答 1

Stack Overflow用户

发布于 2010-06-28 05:46:12

Peter-Paul Koch的测试和兼容表以及移动浏览器上的博客文章可以对您大有帮助:http://www.quirksmode.org/mobile/。

你可以从它的测试开始。

它是一个WAP浏览器有(明显的)问题的HTML网站?如果有可能买某物,或者买另一部手机(智能手机)或.它是混合了吗?:)还是构建了一个WAP网站(编辑:以防万一,我在和WAP网站开玩笑)

否则,需要进行进一步的测试,正如我在对您的问题的评论中提到的。

  • 两种div的样式不同
  • 以不同的方式加载CSS (带有@import的老学校,它是否可以使用样式属性)
  • 删除样式元素上的type属性(仍然尝试以不同方式加载CSS )
  • 添加文本的HTML代码略有不同,div的顺序完全不同
  • id和类选择器
  • 将id和类选择器组合到元素中
  • UTF-8有问题吗?
  • 删除每一个结束标记
  • 删除doctype
  • 移除元
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3130038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档