作者TonyQ (沉默是金。)
看板Ajax
标题Re: [问题] 我写了一个google建议选单的功能
时间Thu May 13 03:51:31 2010
※ 引述《wa120 (哇120)》之铭言:
: 举例: http://www.google.com.tw/
: 就是在输入文字那边输入关键字,会有建议关键字的功能
: 现在遇到了一个问题..
: 就是那边必须要用图层实作(z-index),google也是这麽做的
: 但是有些电脑浏览器会变成透明,也就是後面的文字会跟建议的文字重叠
: 有什麽办法可以去除透明的问题....
: 我设了background-color:#FFFFFF;没用
: background-image:url(white.jpg);也没用
: 请问各位有什麽办法...
: 如果有需要看我目前做的东西的话在跟我说..
你跟我想的一样是弄了个DIV 在下面伪装成类似select的东西吗?
总之,理论上背景设一个特定颜色应该就可以改善背景透明的问题...
有sample的话当然最好(哪些browser有问题也说一下)
--
What do you want to have ? / What do you have?
从书本中,你可以发现我的各种兴趣。
从CD中,你可以了解我所喜欢的偶像明星。
或许从文字你很难以了解一个人,但从物品可以。
My PPolis , My past. http://ppolis.tw/user/Tony
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.136.179.166
1F:推 wa120:没改善... 05/13 03:54
3F:→ wa120:建议清单那边.. 有些电脑文字会重叠.. 05/13 03:55
4F:→ wa120:关键字 林 or 王 05/13 03:56
5F:→ wa120:只有IE有问题 05/13 03:56
6F:推 No:我只有在火狐用IE tab看会变透明,但用IE8开不会变透明 05/13 04:15
7F:推 wa120:有些电脑IE 8会 我有测过IE 6 也会 05/13 04:16
8F:→ No:话说用火狐开没反应,有event没定义的错误 05/13 04:16
9F:→ No:event我记得火狐要随call function的时候当参数顺便丢过去处理 05/13 04:17
10F:推 No:我在IE8怎麽开都正常,也没IE6可测,看来帮不上你了 05/13 04:22
11F:推 wa120:event应该是这行 event.keyCode 我google到的为了测 05/13 04:41
12F:→ wa120:ascii code 05/13 04:41
13F:→ TonyQ:我刚试着把每个li背景上色,很明显是下方盖到上面... 05/13 05:16
14F:→ TonyQ:下面东西的层级在上面东西之上...不过改z-index好像没用 05/13 05:16
15F:→ TonyQ:是说firefox底下会有错误是你绑定click时没把e从fn传进去 05/13 05:18
16F:→ TonyQ: $("#KeyWord").bind("keyup",function(){ 05/13 05:18
17F:→ TonyQ: ^^^^ e 05/13 05:18
18F:→ TonyQ:event 05/13 05:18
19F:→ TonyQ:在想会不会是position 不一样的问题,所以z-index乱了... 05/13 05:19
20F:推 wa120:我发现google处理这个是用table 05/13 05:23
21F:推 No:我猜测可能是CSS的.Top的position:relative造成背景透明 05/13 05:24
22F:推 No:我把该position:relative拿掉,#popup的left改500px 05/13 05:26
23F:→ No:再用ie tab开,背景就出来了 囧 真是太谜了 05/13 05:27
24F:→ No:至於解法...这似乎是IE6的bug,因为用currentStyle看 05/13 05:28
25F:→ No:背景图是还在的 05/13 05:28
26F:→ No:不知道有没有不改变relative前提下的解法 05/13 05:28
27F:推 wa120:感谢No大 我把position:relative改成margin-top:50px; 05/13 05:54
28F:→ wa120:解决了 可惜我不知道该怎麽留下sample给後面的人看 05/13 05:55
29F:推 wa120:我发现这样还不太好 我换解析度位置会跑掉.... 05/13 06:07
30F:→ TonyQ:其实我在猜应该要连ul也一起改 , 我从debugbar看来是 05/13 06:08
31F:→ TonyQ:positon:static的状况,至少把他改成relative 看看 05/13 06:09
32F:→ wa120:google也是用relative+absolute的手法 可是我不知道怎麽办到 05/13 06:09
33F:→ TonyQ:因为我现在手上没有能对class 操作的工具..(js太麻烦了= = 05/13 06:09
34F:→ TonyQ:所以我就不当忙测了... 05/13 06:09
35F:→ TonyQ:其实比较大的问题是 absolute+static 或 relative+static 05/13 06:09
36F:→ TonyQ:我前阵子才解过一个这类型的问题...不过我现在没空帮你测XD 05/13 06:10
38F:→ wa120:没差 哈哈~ 我只觉得我会卡很久 替代方案就显示3笔资料= = 05/13 06:11
39F:推 No:我想是 <div:relative><div:absolute>背景不见</div></div> 05/13 06:12
40F:→ No:这样的相对关系在IE6会让背景不见 05/13 06:12
41F:→ TonyQ:我确定不是这问题,因为我有对每一个子元素上色,元素确实 05/13 06:13
42F:→ No:改成 <div:relative></div> <div:absolute>背景有</div> 05/13 06:13
43F:→ TonyQ:是对的,只是下方的元素硬是盖在上面而已。 05/13 06:13
44F:→ TonyQ:而且照你举的例子来讲 absolute是子元素他应该会在上面 05/13 06:14
45F:→ No:把你的popup独立出来外面就会显示背景颜色了 05/13 06:14
46F:→ TonyQ:他现在的问题不是背景不见,如果上色会发现其实是有背景的 05/13 06:14
47F:→ TonyQ:只是下面的元素没有被遮住,反而是下面的元素去遮上面的 05/13 06:15
48F:推 No:的确是像T大讲的那样,事实上是有填色的 05/13 06:28
49F:→ No:把CSS的.Top加上z-index:1~98,就不会透明了 05/13 06:30
50F:→ No:position的推测只是误打误撞中了XD 05/13 06:31
51F:推 No:这样原因大概是整个<div class="Top">层级都比 05/13 06:33
52F:→ No:<div class="database">的层级还低 05/13 06:34
53F:→ No:Top内的标签设定的z-index被IE6无视这样 05/13 06:34
54F:→ No: ^^Top之内的HTML标签似乎准确一点 05/13 06:36
55F:推 wa120:谢谢各位喔.. 把 .Top的z-index:1;就ok了.. 05/13 06:41