时间:2009年04月01日作者:愚人码头查看次数:12,507 views评论次数:14
IE6真是太疯狂了。今天由于项目需要做了这么一个布局:一个外部的相对定位div,内部一个绝对定位的div(right:0),
如图:

可是在IE6下查看,却变成了right:1px的效果了:
IE6还有奇数宽高的bug,解决方案就是将外部相对定位的div宽度改成偶数。高度也是一样的
查看源码:
CSS代码:
#out {
width: 609px;/*这里宽度为奇数,bug就出现了!!改成偶数就OK了*/
height: 300px;
position: relative;
background:#FF0000;
color:#FFF;
}
#inn {
width: 200px;
height: 250px;
position: absolute;
top: 0px;
right: 0px;
background:#000000;
}
XML/HTML代码:
<div id=“out”>
<div id=“inn”>此处为内部绝对定位的 DIV</div>
</div>
时间:2009年04月01日作者:愚人码头查看次数:15,717 views评论次数:7
在网上看到一个用css自定义“按钮”样式,说是按钮其实是链接,用链接模拟的按钮,这样我们的按钮就可以很丰富了。我们可以用这个来做网站导航,连接,按钮等等。
不过方式有一个很不好的地方就是<a>标签里套了一个空的<span>,从html语义化的角度来说,这个是不应该的。
先看看效果吧:

一.要使用的图片,如图:如果你想修改颜色,可以下载PSD:sliding-door-psd

二.实现原理,如图: 继续阅读:css自定义导航、按钮样式»
时间:2009年03月31日作者:愚人码头查看次数:4,297 views评论次数:0
Windows Internet Explorer 8 支持多种兼容性模式,它们可启用不同的受支持的功能,并影响内容的呈现方式。例如,使某个页面用ie7模式呈现,
要为网页指定文本模式,请使用meat 元素,以在该网页中包含 X-UA-Compatible http-equiv标头。以下示例指定了 EmulateIE7 模式兼容性。
<meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″ />
具体请参考:《未来兼容性中的 META 标记和锁定》
时间:2009年03月29日作者:愚人码头查看次数:5,646 views评论次数:5
时间:2009年03月28日作者:愚人码头查看次数:9,293 views评论次数:18
我们在写css的时候最常用的长度单位是px(像素),经常看到的还有em,pt等等,其实css中的长度单位一共有8个,分别是px,em,pt,ex,pc,in,mm,cm;
- px:像素(Pixel),相对于设备的长度单位,像素是相对于显示器屏幕分辨率而言的。
譬如,WONDOWS的用户所使用的分辨率一般是96像素/英寸。而MAC的用户所使用的分辨率一般是72像素/英寸。
- em:相对长度单位。相对于当前对象内文本的字体尺寸。
如当前行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。
- pt:点(Point),绝对长度单位。
- ex:相对长度单位。相对于字符“x”的高度。此高度通常为字体尺寸的一半。
如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。
- pc:派卡(Pica),绝对长度单位。相当于我国新四号铅字的尺寸。
- in:英寸(Inch),绝对长度单位。
- mm:毫米(Millimeter),绝对长度单位。
- cm:厘米(Centimeter),绝对长度单位。
其中:1in = 2.54cm = 25.4 mm = 72pt = 6pc ;
容器的大小我们经常用px做单位,大家都没什么异议,
字体大小(font-size)很多国内的人(包括我)使用px做单位,其实用px做字体单位唯一的致命缺点就是在IE下无法用浏览器字体缩放的功能。如图。或者以前的按住Ctrl+滚动鼠标的中间的滚轮。
继续阅读:彻底了解css中的长度单位»
时间:2009年03月26日作者:愚人码头查看次数:10,433 views评论次数:4
CSS Sprites在国内很多人叫css精灵,其实这个技术不新鲜,这个技术老到什么程度呢,我不敢确定,但是我看到最早的关于CSS Sprites是在Dave Shea的《CSS Sprites: Image Slicing’s Kiss of Death》,时间是March 05, 2004 ,整整5年了,那时我还没参加工作呢?
这个技巧已经广泛的应用到现在的页面的前端开发中,甚至YUI将他定为《提高网页效率的14条准则》的第一条准则“Make Fewer HTTP Requests” ,可见这个技术的重要性,也正是YUI的推荐
使这个CSS技巧得到了广泛的推广和应用。
先来看个最简单的DEMO:
这是背景图片

这是一个简单的CSS Sprites的demo:
XML/HTML代码
- <div style=“float:left; width:120px; padding-left:20px; background:url(ico.png) left top no-repeat”>这里显示红叉</div>
- <div style=“float:left; width:120px; padding-left:20px; background:url(ico.png) left -32px no-repeat”>这里显示绿勾</div>
- <div style=“float:left; width:120px; padding-left:20px; background-image:url(ico.png); background-position:left top; background-repeat:no-repeat”>这里显示红叉</div>
- <div style=“float:left; width:120px; padding-left:20px; background-image:url(ico.png); background-position:0 -32px; background-repeat:no-repeat”>这里显示绿勾</div>
看看页面中的显示!
继续阅读:谈谈CSS Sprites(css精灵)»
时间:2009年03月26日作者:愚人码头查看次数:5,807 views评论次数:12
在前端开发中经常会碰到浏览器兼容性问题、css2各个属性被各个浏览器支持的问题,css继承,css叠加等等,我们经常因为这些而需要调试页面中css。
以下只是我个人的一些经验总结,如果有不合适请留言斧正,欢迎补充。
一、为什么页面会出现种种的bug
1.浏览器的本身对CSS支持BUG:
IE6有一堆BUG,具体可以参考一下《IE6 BUG大全》http://www.css88.com/archives/579;
FF需要注意清除浮动;
还有浏览器对css2各个属性的支持问题,大家需要了解浏览器对css2各个属性的支持情况;
2.直接书写错误,由于自己在写css时候的粗心造成的BUG
比如将 .ask-lable{width: 934px;height:94px; padding-top:43px; margin:0 auto;}
中的“{}”写成了中文状态的“{}”,或者溜掉了结束的“}”;margin:0 auto;中的冒号和封号,也会经常被写成中文的,还有0(零)经常会被写成o(英文字母o);width: 934px;中的px经常会被忘掉,还有以下缩写的格式等等;
3.在页面编码不统一的情况下,经常会碰到,样式写着写着,在ie6下页面就乱掉了,这是IE6的bug;
4.没搞清楚html的块状元素和内联元素,css的某些属性对内联元素不起作用,
可以参阅:html中的块元素(block element)和内联元素(inline element) http://www.css88.com/archives/646
比如:<span style=”text-align:right;margin:30px; padding:30px; border:#F00 2px solid”>span是内联元素</span>;
比如,我们完全可以把内联元素cite加上display:block这样的属性,让他也有每次都从新行开始的属性。也可以把块元素div加上display:inline,让他显示为内联元素。
5.css继承,css叠加也可能造成一些bug,这里要特别注意一下重置样式(css reset)中和公用样式(public)的继承。
继续阅读:页面中css调试和问题解决的一些经验总结»
时间:2009年03月26日作者:愚人码头查看次数:29,812 views评论次数:19
取这个标题我很胆怯,因为我始终不敢确定这个到底是不是透明度的继承!但是我没相到更好的标题,那也只能用这个比较形象的标题了。

在前端开发的时候,经常用到板块背景的透明度,
例如这样的结构:
XML/HTML代码
- <div class=“div1″>这里文字图片都带透明度了
- <div class=“div2″>图片</div>
- </div>
样式
CSS代码
- body {
- background-image: url(http://www.css88.com/demo/jQuery/blockSlide/2009-02-04_105247.png);
- background-repeat: repeat;
- }
- .div1{ width:200px; height:200px; background:#FFFFFF;filter:alpha(opacity=70);opacity:0.7;}
- .div2{ width:100px; height:100px; background: url(http://www.css88.com/images/testbok.png)}
这样里面的容器div2就“继承了”外面容器div1的透明度,也变成了70%的透明。ie6-ie8,ff,及其他都是一样。
查看demo中的示例1:http://www.css88.com/demo/opacity/opacity.html
这根本不是设计师的本意。设计师只要使背景透明,里面的内容不透明。
那么我是这么解决的:
继续阅读:一个关于透明度继承的问题»
时间:2009年03月26日作者:愚人码头查看次数:8,163 views评论次数:8
IE6下链接伪类(:hover)CSS背景图片有闪动BUG,主要原因ie会再一次请求这张图片,或者说图片没被缓存。
例如:
CSS代码
- a:hover{background:url(imagepath)}
常用的解决方案:
在页面底部添加以下IE6专用代码,让IE6缓存CSS背景图片至本地,这样a:hover时IE6就不会再重新向服务器请求加载背景图片了。
XML/HTML代码
- <!–[if IE 6]>
- <script type=”text/javascript”>
- document.execCommand(”BackgroundImageCache”, false, true);
- </script>
- <![endif]–>
-
继续阅读:【IE6的疯狂之八】链接伪类(:hover)CSS背景图片有闪动BUG»
最新评论
可惜不能辞工。。。
Post:2012-05-14 22:24:43群都满了,求入群。 319031954.
Post:2012-05-14 16:41:39可惜不在广州
Post:2012-05-12 16:10:54厉害,受益匪浅!
Post:2012-05-12 13:48:02又在招人。可惜不是我。
Post:2012-05-12 11:50:12很好很好verygood
Post:2012-05-10 10:58:33json官方的定义是 A collection of »
Post:2012-05-09 20:23:49前端爱好者求入群啊 作品地址:http »
Post:2012-05-09 14:32:41