PNG背景透明-滤镜使超链接失效的解决方法

作者:乔夫  分类: 网事悠游  日期:2010-11-20  1 条评论  

PNG背景透明的问题真的是个老掉牙的问题,可对于我这种从来不记代码的人,每每总会成为一个搜索控,哪怕就是检索自己的博客。这不这两天又遇到一个老问题,就是如果PNG图片是作为背景使用,那么IE6加上滤镜实现PNG背景透明后,背景之上的超链接却会全部失效,点无可点。原因,想也明白:就是默认滤镜的层级比伪类内容要高。解决的方法也很简单,比如用套用JS重新定义又或者对CSS做一些必要的修改。可我竟然费了老半天也没想起来其中的对错缘由,所以这次也得留下些许文字记录之,以备不时之需了。

简单的一个办法,给所有内容里的超链接加个相对属性。但是切忌加背景这个层不要再有定位,绝对也好相对也罢,必要的话可以在外面再套一层定位之,不然链接还是会被滤镜遮挡。

#a {
  position:absolute;
  top:*;
  left:*;
}
#b {
  background:url(*.png);
  _background:none;
  _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='*.png',sizingMethod='image');
}
#b a { position:relative; }
<div id="a">
<div id="b"><a href="#">*</a></div>
</div>

Read more »

让IE6支持first-child和last-child伪类选择符

作者:乔夫  分类: 网事悠游  日期:2009-11-22  1 条评论  

关于 first-child 和 last-child 的用途我想就不用多说了吧,做导航、列表类的东东时,想让第一个或最后一个样式区别于其它中间的各个元素,比如字体、间距、背景……这时自然就会想到这两个伪类选择符。

在这里我是想做一个图片展示,一行三张图片,各图片间距 55px,就版式需要而言,第一个图片这个 margin-left:55px; 是肯定不行的,实际需要它零距离抵边。以往的话,就是直接在第一个图片的容器标签上直接加个 margin-left:0; 的样式。但假使这里不是一行,而是多行的话,是不是就太繁琐了?后台程序写循环时又得多做一次无谓的判断。所以,就要用到 first-child 了。

a { margin-left: 55px; } /*我的图片是放在A标签里的*/
a:first-child { margin-left: 0; }

效果实现。但问题也接着来了,IE6 是不支持 first-child 标签的。怎么办呢?为了不给后台添麻烦,那就得前台麻烦了。搜索一下,看网友 Realazy 是用 JS 来判断,加上选择符判断后,单为 IE6 遍历出所有标签,然后在第一个标签上加样式。不过,他是用的 ul 标签遍历出其中的 li,可我这里是把 a 放在了一个 div 里,形如:

Read more »

Iframe中定位内框网页

作者:乔夫  分类: 网事悠游  日期:2009-11-17  4 条评论  

假使我们需要内框一网址,但只是想显示页面中的某一位置,怎么办呢?当然前提是被内框的页面我们动不了,那么就只有在 Iframe 本身上想办法。对 Html 说到底还是不熟悉,用 Vspace 和 Hsapce 定义半天无果,搜索了一下感觉也不是那么回事。最后只有求救于 CSS。

方法很简单,比如我 Iframe 本站,只想显示 Logo 部份。

第一步,我就只建一个 Logo 大小的 DIV:

<div id="iframeBox" style="overflow: hidden; width: 200px; height: 70px;"><div></div></div>

然后将 Ifrmae 放入 DIV 中,在页面内框进来的同时,定义内框的左右边距:

<iframe src="http://ichov.com" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" style="margin: -60px 0 0 -50px; width: 500px; height: 500px;"></iframe>

Read more »

CSS验证时前景色和背景色相同的问题

作者:乔夫  分类: 网事悠游  日期:2008-11-30  1 条评论  

一国外客户要求网站必须严格符合标准,XHTML 不能用“transitional”只能用“strict”,而且 CSS,只是验证通过也不行,必须要求没有警告信息。可着实让人纠结了!

一个最简单的问题,似乎就在所难免。举个例子,假使像本站导航菜单不是用 Flash 而是用列表写的话,肯定会定义背景色为“#900”,而因为全局样式里链接色彩现在也同样是定义的“#900”。那么标准就很“善意地”想当然地以为背景色和前景色相同,就看不到文字了,所以就会给出警告。也不管,其实链接所处位置与背景色区域根本风马牛不相及。晕乎来哉,搜索了半天,也没见到有什么方法解决!最后不得已,只能是把纯色块与也用一象素图片来填充。唉……

不知道可有朋友有更好的、方便的解决办法???

样式表编码与注释语句的冲突

作者:乔夫  分类: 网事悠游  日期:2008-11-18  暂无评论,你来说两句呗?  

刚刚发现,在 IE 下不仅 HTML 中的注释语句会影响版式,样式表中的的注释语句也同样会产生影响。

昨天写某个两栏版式,A、B 相邻左浮动对齐,但发现在 IE 下前面的 A 莫名其妙地消失,B 自动靠前。清除浮动也无济于事,定义其它样式诸如背景、边框各属性也同样异常,有点儿奇怪,有点儿郁闷!一直找不到症结,后来又用老套的排除法,终于找到问题所在。删除样式中某几行代码就 OK。再细究,删除后面的注释语句就行。
Read more »

Page 1 of 212