zoukankan      html  css  js  c++  java
  • 怎样使背景图片占据整个屏幕?

    (今天在知乎上答了这题,直接把自己的答案搬过来了.....)

    一直在关注这个问题(其实是因为压根就是初学者.....

    就现在了解有几种方法:

    ①CSS处理方法(仅IE)

    #backGroundImg {
      background-image: url("X.png");
      background-repeat: no-repeat;
      filter:progid:dximagetransform.microsoft.alphaimageloader(src='X.png', sizingmethod='scale');/*加上这个,详细可Google*/
    }

    ②把背景图片做的足够大;
    一般情况下,我们设计给我的图都是1440*900的极限,然后居中显示就会适应大部分的屏幕了。可是现在显示器越来越大,加上Mac下Retina屏超高分辨率的虐待...当分辨率超过背景图大小时,边上就会变成背景色了。
    所以最直观的方法就是将背景图的大小,翻倍,翻倍,再翻倍....只要超过主流浏览器最大分辨率就好了。
    不过弊端很明显,过大的图片会极大的影响网页的加载速度。

    ③用Js/jQuery控制大小(这其实是种假象的背景自适应)
    利用加入个<img>标签,将z-index设置的低一些,然后用Js/jQuery监视窗口大小,然后改变图片的长宽就好了。(详细Google)
    不过,这种方法,当图片被拉伸或压缩的过于严重的时候会非常可怕的.....
    而且,如果屏蔽右键功能会很蛋疼;不屏蔽右键功能就露怯了。

    ④利用<img>元素自适应。
    这个其实和③差不多,如果是整个网页的背景,在起始<body>后马上加上<img>然后将CSS设置
    100%;
    height:100%;
    这样,图片就会随着浏览器的放大缩小自动缩放了。弊端也和③差不多。

  • 相关阅读:
    从国内流程管理软件市场份额看中国BPM行业发展
    为什么流程是成功企业的关键?
    港真,到底应该选择OA还是BPM?
    hello world
    i40e网卡驱动遇到的一个问题
    suse 11 sp3编译报错问题
    linux scsi相关的一些学习笔记
    linux tcp 在timewait 状态下的报文处理
    趋势科技 redirfs模块的一个小问题
    linux 3.10 一个扇区异常可能引发的hung
  • 原文地址:https://www.cnblogs.com/dongchongle/p/3560295.html
Copyright © 2011-2022 走看看