CSS文本选择光标ie7,奇怪的行为

CSS文本选择光标ie7,奇怪的行为,css,internet-explorer-7,Css,Internet Explorer 7,奇怪的一个,希望得到一些反馈给我指出正确的方向 如果我的包装器或任何子div没有应用背景色,ie7会在页面上移动鼠标时(无论是否在文本上移动)将普通指针光标更改为文本选择光标 我以为我已经解决了这个问题,但当我删除包装器或任何子div的背景色时,问题又出现了 只是想找些提示或者我应该检查的东西 #wrapper { overflow: hidden; margin: 0 auto; width: 960px; /* using 960.gs */ } #children

奇怪的一个,希望得到一些反馈给我指出正确的方向

如果我的包装器或任何子div没有应用背景色,ie7会在页面上移动鼠标时(无论是否在文本上移动)将普通指针光标更改为文本选择光标

我以为我已经解决了这个问题,但当我删除包装器或任何子div的背景色时,问题又出现了

只是想找些提示或者我应该检查的东西

#wrapper {
    overflow: hidden;
    margin: 0 auto;
    width: 960px; /* using 960.gs */
}

#children {
    display: inline;
    float: left;
    margin: 0 10px;
    width: 940px;
}
编辑:

似乎是因为divs有布局,但我仍然不知道如何修复它。看

编辑2:

我找不到关于这个ie7错误的更多信息。任何有任何想法的人,或者即使你知道这个bug,也可以让我知道,这样我就知道我没有疯。我又对微软感到失望了。这周我已经多工作了几个小时。好像永远不会结束

编辑3:

下面是一些有同样问题的人的照片

编辑4:

受这个虫子的折磨!我也是。我保证很多网络开发者在他们的网站上都有这个bug,他们甚至都不知道

你自己看看吧。。。将光标悬停在任一站点的页面上。请注意,它会在不应该的时候变成文本选择光标


使用cursor属性似乎很容易修复,但问题是在需要时触发正确的文本选择光标行为。

您是否尝试过设置背景色:透明;明确地这有帮助吗?

这听起来像是一个丑陋的破解,但是你是否尝试过将一个透明的1x像素GIF AKA间隔设置为背景?

这并不完美,但对于这个小例子来说,它似乎适用于IE 7

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div style="overflow: hidden; margin: 0 auto; width: 140px;">
   <div style="position: relative; display: inline;">
      <p>
         Here is some test text that will wrap.
      </p>
   </div>
</div>
</body>
</html>
我不知道为什么这似乎是有效的,它肯定是不理想的。出于某种原因,将p元素放在内联相对定位的div中会使鼠标光标的行为更像我预期的那样

我不确定这在更广泛的意义上是否有效,尽管存在元素层次结构


我意识到这不是一个完美的答案,但它可能会激发其他想法。

我很确定我以前遇到过它,但在一些肤浅的浏览器测试中,它可能有点过于微妙,以至于无法真正注意到。但我当然也通过设置背景色解决了问题

据我所知,修复它的最佳方法是定位导致问题的元素,或者在其周围添加定位的包装器div。您最有可能使用position:relative,但绝对和固定也应该适用

定位元素本身通常是可行的,但是添加包装器div可能会更加一致


例如,添加位置:相对于.post文本类,将光标固定在此页面上的问题和答案上。

明确说明光标应放在何处是否太粗糙

html {
    cursor: default;
}

h1, h2, h3, h4, h5, h6,
p, li, label, td, th {
    cursor: text;
}

a:link, a:visited, a:hover, a:active {
    cursor: pointer;
}

等等

黛利拉的解决方案,只有一点点简化对我来说非常有效,也解决了墨卡托的问题

div { cursor: default; }
div * { cursor: auto; }
问题是您必须创建另一个css文件,并使用条件注释来解决它,而不是阻止其他浏览器


PS:这个问题对于深色背景的网站来说非常烦人。

透明的1x1 px GIF可以正常工作,同时也是IE 6到8中其他错误的一个很好的修复方法。我想在所有IE的条件评论中添加如下内容:

* {
    background: url('images/fix1.gif');
}

你能举出一个活生生的例子吗?我不确定问题出在那些行中……是的,我刚刚发布的链接上有一个实例。下载测试页面上的文件,并在ie7中打开“er”直接查看。你没有疯。我还发现了其他一些问题是由布局引起的,但还没有解决办法。我希望它能有所帮助:试试这些,做第一个我不太喜欢的,因为它使用了一个条件注释:Yeppers,试过了。不起作用。我想我希望有人能给我一些东西给谷歌。似乎奇怪的是,以前没有多少人经历过这种情况。太糟糕了:我认为透明的背景足以阻止它发生。我想你不需要任何背景?否则,您可以通过条件注释在IE7样式表中添加一个。似乎是其中一个渲染错误,没有像样的解决办法。Javascript?对不起,我帮不上忙。是的,到目前为止,我唯一的想法就是把我的CSS弄糟,然后放一个与我网站主要部分相匹配的背景色——只是为了IE7,哈哈。我还没有试过,但如果真的是这样,我想我宁愿设置一个背景色。好的建议,但这还不能完全解决问题。然后,文本光标出现在整个块上,包括最后一行部分填充的任何填充和空格,而不仅仅是实际文本。同意。好主意,我已经试过了,但并没有因为墨卡托引用的理由而放弃。嗯,我们需要这么精确吗?哦,天哪。。请参阅我对这个问题的评论,要求提供更多关于推理的信息
位置:相对;对我的包装没有什么区别。至于包装我的包装纸,嗯,我想我宁愿忍受这种奇怪的光标=很公平。不过,我很好奇,添加额外的定位包装是否能解决这个问题?