HTML和CSS——背景图固定

效果:

对于不规则图片,在屏幕缩小时图片适当左移,但为了不遮挡左侧文字,左移至一定位置后图片固定位置。

方法:

给背景图片设置宽度和absolute定位,使得图片浮于页面。然后在js里边判断当前窗口大小,当页面小到会致使图片遮挡左侧文字时,给图片添加left属性,这样图片就不会再向左移动了(如果文字在右侧就添加right属性)。

html

<body>
    <img class="backImg" src="img/backimg.png">
    <div id="container">
    </div>
</body>

css

body {
    margin: 0px;
    min-width: 1920px;
    min-height: 800px;
    overflow: hidden;
}

.backImg {
    width: 1530px;
    position: absolute;
    right: 0;
    top: 0;
}

#container {
    position: fixed;   bottom: 250px;    width: 383px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 131px;
}

js

window.onload=function(){
    if($(window).width()<=1660){
        $(‘.backImg‘).attr(‘style‘,‘left:150px;‘);
    }
}
$(window).resize(function(){
    if($(window).width()<=1660){
        $(‘.backImg‘).attr(‘style‘,‘left:150px;‘);
    }
    else{
        $(‘.backImg‘).removeAttr(‘style‘);
    }
})

原文地址:https://www.cnblogs.com/cff2121/p/11251877.html

时间: 2024-11-06 07:44:35

HTML和CSS——背景图固定的相关文章

css背景图与html插入img的区别

一直以来都认为css背景图与直接插入img图片的效果是差不多的,直到最近拜读了一位大神的作品,发现大部分图片都是通过背景图形式显示的,于是在此总结了下二者的区别: 1. css中的图片以背景图形式存在,写在html中的图片以标签形式存在.而在网页加载过程中,以css背景存在的图片会等到html结构加载完成才开始加载,而html中的img标签是网页结构(内容)的一部分会在加载结构的过程中加载. 附:在一个单纯由Html和Css组成的页面中,背景图片总是最后加载的,那么假若我们想要使用较小的背景图片

css背景图定位

css背景图定位 20%的功能满足80%的需求.爱.喜悦.和平. html代码 <!DOCTYPE html> <html> <head> <title>css背景图定位</title> <meta http-equiv="content-type" content="utf-8"/> <style> div{width:34px;height:34px;border:solid 1

Lodop打印控件不打印css背景图怎么办

background:url()这是css背景图,http协议会按异步方式下载背景图,所以很容易等不到下载完毕就开始打印了,故lodop不打印css背景图.Lodop不打印css背景图,但是有其他方法输出背景图,在超文本中也可以用普通图片利用层级关系作为背景图输出,img图片设置样式z-index为负值(例如style='z-index: -1;).其他背景图及输出方法,可参考本博客其他博文. Lodop打印html超文本可以输出css背景色,但是不能输出背景图,见图一: 通过设置img图片设置

vue的挖坑和爬坑之css背景图样式终极解决方法

原问题 #wrapper{ width:100%; height:100%; position:fixed; background-image:url(./img/open_bg.jpg) } 在.vue文件中的CSS样式中,使用背景图 在webpack打包后,路径不对,怎么办呢? 回答 如果你用了vue-cil,那么在build目录下找到utils.js中的ExtractTextPlugin.extract({}),里面添加下面这个属性就完美解决了publicPath: '../../' 解释

CSS 背景图拉伸 兼容 FF Chrome IE 等主流浏览器(转)

注:本文欢迎转载,以下为本人亲测,转载请注明:http://blog.csdn.net/wqmain/article/details/8844286 相信各位一定碰到过这种情况,按钮作为DIV的背景图来显示,实际上有多个这样的按钮,而且DIV中的文字,也就是按钮上要显示的文字内容和个数都 不定,这种情况下就需要用背景图片拉伸效果来处理了,只需做一个按钮图片,作为DIV的背景图时随着DIV的宽度或高度自适应就OK了.网上也找过,但不 兼容IE或有bug,下面贴出本人亲测代码,兼容主流浏览器,包括F

vue项目打包后css背景图路径不对的问题

问题描述: 自己在自学vue做项目的过程中,遇到一个有关背景图片路径的问题,就是css代码中背景图片是根据相对路径来写的,如下图: 当使用npm run dev命令本地访问的时候,背景图片是正常显示的,可使用npm run build命令打包后,访问dist目录下的项目,页面背景图路径就不对了,显示不出背景图.如下两张图对比 图一:使用npm run dev命令访问 图二:使用npm run build命令打包之后,访问dist目录下的文件,出现的问题,背景图片路径变成了http://127.0

不同分辨率下,背景图片保持居中,导航条与背景图固定位置,按原比例共同进行缩放

1.如果导航条需要居中显示,背景图与导航条切合的部分也要在图中居中 2..banner{height:260px;background:#b2d574 url(banner.jpg) center no-repeat} 3.导航条宽度与背景图切合部分宽度一致,并居中显示

CSS背景图拉伸自适应尺寸,全浏览器兼容

突然有人问我这个问题,说网上CSS filter的方法在非IE浏览器下不奏效.思考之后,问题之外让我感慨万千啊,很多我们所谓的难题,都会随着时代的发展迎刃而解,或被新的问题所取代. 当CSS背景图片拉伸这个问题产生时,CSS3也只是浮云.... 对于IE而言网上常见的方法是使用CSS滤镜,但那时Firefox还小,Chrome还没出生,IE称霸天下.....但如今,我们用三四行简短的代码就能实现全浏览器兼容的方法: .bg{ background:url(http://wyz.67ge.com/

缩小窗口时CSS背景图出现右侧空白BUG的解决方法

页面容器(#wrap)与页面头部(#header )为100%宽度.而内容的容器(#page)为固定宽度960px.浏览窗口缩小而小于内容层宽度时会产生宽度理解上的差异.如下图所示窗口宽度大于内容层宽度: 改变浏览器窗口的大小,小于内容层宽度,如下图所示. 拖动水平滚动条,出现了bug的样子.右边的背景不存在了.如下图所示. 问题的根本在于:当窗口缩小时,浏览器默认100%宽度为浏览器窗口的宽度.而忽略了下部内容层固定宽度(960px).从而出现了固定宽度大于100%宽度的现象.浏览以此理解来解