邪罗刹的菠萝阁


> 小邪折腾了两天没写什么文章,一直在做这个博客圣诞套装,昨天在弄设计方案和雪的效果。
> 今天设计图拆分出来,然后用 CSS 代码把这些元素摆放到位,相对定位快把我折腾挂掉。

> 终于搞定了,快升天了,以后要是找不到小邪,就烧纸。记住,你烧的不是纸,是寂寞。
> ╮(╯▽╰)╭,弄个圣诞套装花了俩天,信春哥不管用了,话说2012年春哥保佑是不是不用上船?

1. 相对定位的占位概念

> 注意!!使用相对定位移开元素后,元素原来的位置所占用的空间依然保留。
> 在图中,圣诞老人原位置是在标题的右边。
> 而我把他向下移动了,但是原来把导航栏挤出位子的情况依然存在。

2. 相对占位的特点与如何利用

> 特点!!当我们装饰图片的 DIV 处于另外 DIV 的底部,即内容在此之上的时候。
> 我们若把图片的 DIV 的高度设置为 0,即可防止挤压其他的元素。

</li></ul>
<!-- navigation END -->
<!-- Christmas -->
<div id="evlos_chr">
<img id="evlos_chr_001" src="/global/tool/picroom/save/christmas/001.png" />
</div>
</div></div></div>
<!-- header END -->

3. 顺带介绍一个属性 Visibility:hidden

> 这个属性基本和 Display:none 相同,功能都是隐藏一个元素。
> 但是使用 Visible:hidden 属性会使对象不可见。但该对象在网页所占的空间没有改变
> 而 Display:none 属性会使这个对象彻底消失,并且不占用空间。

4. 搞定顶部的圣诞装饰

> 使用以下的 CSS 代码,终于让它们到了它们该去的地方了。
> 而这里的关键在于一定要选好相对的父元素,我选的是框住整个顶部的 DIV。

#evlos_chr {height:0;width:0;}
#evlos_chr img {
 background:none;border:none;margin:0;
 padding:0;position:relative;
}
#evlos_chr_001 {top:45px;left:-310px;}
#evlos_chr_010 {top:-90px;left:170px;}
#evlos_chr_002 {top:-165px;left:439px;}

> 貌似成功了,在 Chrome 和 Safari 里完全正常,其实是一个大杯具呀 ( ⊙o⊙ )。
> 因为 Oprea 和 Firefox 下显示是这样子的。

> 不只是杯具,看这里的茶几。在 IEtest 里的 IE6 中几乎是一个洗具。

> 只能把这三张图片放到这里,然后重新相对定位了,史无前例的大杯具啊。

<div id="container">
<div id="content">
<div id="main">
<!-- Christmas -->
<div id="evlos_chr_header">
<div id="evlos_chr">
<img id="evlos_chr_001" src="/global/tool/picroom/save/christmas/001.png" />
<img id="evlos_chr_010" src="/global/tool/picroom/save/christmas/010_Top.png" />
<img id="evlos_chr_002" src="/global/tool/picroom/save/christmas/002.png" />
</div></div>

> 吼吼。在 IE6 里面除了不支持背景透明,和稍微有一点点偏移,其他都很好了。

> 话说在 IE6 、IE7 和 IE 8 里全有相同程度的偏移,见鬼的 IE。蛋定,要蛋定。
> 这里使用”*“星号进行修正,这个符号只有 IE 会去解析,其他的浏览器一概不理。

#evlos_chr_001 {top:60px;left:-60px;*top:56px;}
#evlos_chr_010 {top:-74px;left:245px;*top:-82px;}
#evlos_chr_002 {top:-147px;left:523px;*top:-159px}

5. 搞定底部的圣诞装饰

> 找一个父元素花费了我最多的时间,所以说父元素是很牛逼的。
> ╮(╯▽╰)╭,找不到强大的父元素,只好自己在 Main 这个左半边的大 DIV 里自己建了个。

#evlos_chr_003 {top:72px;left:-55px;*top:87px;}
#evlos_chr_footer {float:left;width:auto;height:0;}
<!-- Christmas -->
<div id="evlos_chr_footer">
<div id="evlos_chr">
<img id="evlos_chr_003" src="/global/tool/picroom/save/christmas/003.png" />
</div></div>

6. 搞定侧边栏的圣诞装饰

> #main 和 #sidebar 的 Overflow:hidden 别忘记去掉喔,这个参数的作用是超出元素范围自动隐藏。
> 不然我们相对定位这些图片的时候,只要一移出父元素,图片就看不见了。

> 使用我的”组织“挂件作为父元素,这个是一个文本挂件,所以直接在其 Html 中写入并写上相应的 CSS:

#evlos_chr_004 {top:-312px;left:79px;*top:-316px;}
#evlos_chr_008 {top:8px;left:79px;*top:0;}
#evlos_chr_009 {top:110px;left:79px;*top:98px;}
<!-- Christmas -->
<div id="evlos_chr_sidebar">
<div id="evlos_chr">
<img id="evlos_chr_004" src="/global/tool/picroom/save/christmas/004_Comments.png" />
<img id="evlos_chr_008" src="/global/tool/picroom/save/christmas/008_Orgs.png" />
<img id="evlos_chr_009" src="/global/tool/picroom/save/christmas/009_Tags.png" />
</div></div>

7. 针对 IE6 及以下的 Hack

> 因为有透明背景的 PNG 在 IE6 及以下版本中不被支持,背景会变成灰底。
> 加上我实在挺不住了,要睡觉去了 ZZzzzzzz ╮(╯▽╰)╭。
> 所以干脆直接对 IE6 用户隐藏我的圣诞装饰了,不去用滤镜了,有时间再搞起来。

<!--[if lte IE 6]>
<link rel="stylesheet"
href="http://www.evlos.org/global/lab/wp-content/themes/elegant-box/ie6.css"
type="text/css" media="screen" />
<![endif]-->
#evlos_chr {height:0;width:0;margin:0px;display:none;}
#evlos_chr img
{background:none;border:none;margin:0;
padding:0;position:relative;display:none;}
#evlos_chr_footer {float:left;width:auto;height:0;display:none;}
#evlos_chr_footer_inner {height:0;width:0;margin:-100px;display:none;}
#evlos_chr_footer_inner img
{background:none;border:none;margin:0;
padding:0;position:relative;display:none;}

8. 欢迎来 Follow 我的 Twitter @AngelSolo

Leave a comment
138 Comments.
  1. Auston Jary Google Chrome Windows 坐沙发!#1

    一大清早来沙发~
    信春哥,来1WIP.
    我就不要这个了,我要不挂科,信春哥春哥无敌嘛
    我也要弄这个圣诞礼服~!!!!!

    @
  2. 阿士 Mozilla Firefox Windows 坐板凳!#2

    这么早来,居然没沙发了

    @
  3. awu Google Chrome Windows 躺地板!#3

    收藏你的圣诞图片了!博客就不折腾这个了~~~~

    @
  4. SATURN Mozilla Firefox Windows 天花板!#4

    为什么右边的圣诞老人没有眼睛。。。

    @
  5. 看的我心拔凉拔凉的...
    看起来圣诞节的主题我要搞到明年的圣诞才能放出来了...

    @
  6. 太可爱了,特别是雪人

    @
  7. 很漂亮呀.. 我也想去弄一个

    @
  8. ie6 png的js补丁,引用就可以了。http://www.ineme.cn/images/unitpngfix.js

    @
  9. 我说我怎么没有看见呢,原来我的是IE6

    @
  10. 怎么不把最上面3张图片合成1张,这样不更好控制么?
    随便找个地方插个div,定义background(您的装饰图),定义好宽度高度
    给个position:absolute
    top来控制顶部间距
    right:50%让它永远居中(left也可),然后用margin来控制左右。
    就完全独立的一个装饰了~~
    这样比每个图片定义margin 来得更好控制吧。。以上是拙见。。
    对于PNG IE6 IE7 IE8一般都是杯具的。。

    @
    • @kaka,
      您的底部侧栏也类似可以做。。而且顶部跟侧栏基本是不会变的。它们全部合体成1张就好了~
      background position top right margin width height
      1个div 上面7个式样 基本可以解决您的问题。。基本浏览器都兼容。。

      @
    • @kaka,
      这样做效果就不是这样图片环绕在日志容器左上角和右上角,而是随浏览器分辨率不同而位置变化

      @
    • @kaka , 啊 非常感谢你讲那么多 受教了 ~
      昨天估计半夜三更太困了 居然把 right:50% 这个可以用百分比表示给忘记了 ~
      大杯具啊 ~
      -------
      饿 那个 全搞成一张图不是就没法点击链接了吗?

      @
    • @kaka , 呵呵,没关系的,真的很感谢你那么耐心的指点我 ~ :biggrin:

      @
  11. 很喜庆,但是貌似影响了加载速度

    @
  12. 很漂亮,偶喜欢偶也要给博客加点喜庆气氛,感谢提醒哦,哈哈!

    @
  13. 好精致啊,连头像上都有一顶帽子。

    @
  14. 我觉得你太牛了 :cool:

    @
  15. 哈哈 !不错么,.支持

    @
  16. 有显示问题.右边栏.注意看一下把

    @
  17. 圣诞的味道。。。

    @
  18. @真好网 ,
    干掉ie6!

    @
  19. 页脚的雪人看上去最舒服!

    @
  20. 怎么不用gif格式图片,这些图片也没什么半透明元素。。。。

    @
  21. 好温馨啊!又一次让我顶底膜拜!

    @
  22. 技术的不咋东,不过真漂亮!

    @
  23. 你这个主题看起来真的不错!

    @
  24. 太漂亮了,高手啊!

    @
  25. @诗酒如画 , O(∩_∩)O哈哈 ~ 太好了 ~
    多谢PS大湿 ~

    @
  26. 不会弄啊XX。。。看起来不错的。

    @
  27. 不知不觉中,圣诞节也临近了~

    @
  28. 囧,我也点快了~
    这个风格蛮不错的,挺有味道的!
    我发现你的水平确实有点高啊~

    @
  29. 经过N多次的试验,WordPress我还是用不起来..所以你的这个礼服我更是穿不了了...

    @
  30. 很有感觉了,不错啊

    @
  31. 主题很不错 :rolleyes: ,给圣诞老人加个眼睛应该很简单啊。

    @
  32. 这个主题第一眼很吸引人,有一见钟情的感觉;但是看久了会觉得有点刺眼,不适合长时间在这个主题上看文章.

    @
  33. 你真的做出来了,版面设计果然没有让我失望,很好很强大
    支持是一定要的 : )
    Xmax 给你提前送上了

    @
  34. 很好看啊 不过侧栏在FF下最后三个没放好~ 因为内容的高度不定ba ~

    @
    • @疾风 , 汗 ~ 我在自己的 Opera Firefox IE8 Chrome Safari 都测试无误的 ~
      貌似是字体的问题 不同字体占用空间不同 ~
      杯具了 ~ 我想想怎么搞定 ~ 多谢提醒 ~ :idea:

      @
  35. 强力围观,那个头像上的圣诞帽真搞 :evil:

    @
  36. :mad: 我的博客无法安装你的皮肤!

    @
  37. 强悍只能这样说了,羡慕呀

    @
  38. ZBLOG的能不能用?

    @
  39. IE6我觉得就不应该纵容他。

    @
  40. 很漂亮,但是偶更喜欢中国风!嘿嘿 :mrgreen:

    @
    • @北街 , 呵呵,中国风,╮(╯▽╰)╭,我搞中国风不是很擅长 ~
      到时候过了圣诞节要过年的时候 ~
      我看看能不能搞个出来 ~ :biggrin:

      @
  41. :exclaim: 这么费劲么?你把图片都放新DIV里然后把DIV绝对定位,里面图片相对DIV定位不好么?

    @
    • @九站 , ╮(╯▽╰)╭ 绝对定位照顾不到那些经常变动长度的元素啊 ~
      比如我的推特那一栏 经常长长短短的说 ~ :cry:

      @
  42. 非常可爱的说,不过我不是WP的

    @
  43. 偶不信春哥,只信自己的心。

    @
  44. 与时俱进 不错。。。。

    @
  45. 好风格

    @
  46. 这个主题冬天的感觉比较强,圣诞的感觉反倒淡了点! :mad:

    @
  47. 圣诞貌似还很早,但已经有节日气氛了

    @
  48. 小邪还是蛮有才的,赞一个~

    @
  49. 可惜俺用的是F2,用不上这个皮肤啦!

    @
  50. haha,喜欢~今天本来想只改header的背景图片~现在看完了决定圣诞上线一个完整的改动~

    @
  51. 很有节日的感觉……
    呵呵~
    学了不少CSS的知识……

    @
  52. 很可爱的圣诞老人

    @
  53. 博主是个潮人啊,圣诞快了

    @
  54. 下雪效果不错,收藏备用

    @
  55. 好想要圣诞老人和那几个小雪人的元素呀~~ 我是学平面设计的。嘿嘿
    我博客很少有这种技术类的东西呢,主要是心情日志为主。以后常来往哈~

    @
    • @阅城 , 呵呵,你如果想要那些元素的话,加我QQ415315085,我送你咯 ~
      话说你的博客也挺雅致的,我已经订阅了,不错不错,常来往呢 ~

      @
  56. 很好很强大!已使用了您写的下雪脚本,灰常的感谢!

    @
  57. 好多评论... :biggrin:

    @
  58. 没看到图片

    @

Leave a Reply


[ Ctrl + Enter ]