美文网首页web进阶
web进阶之十五:关于背景的图片在元素中的位置

web进阶之十五:关于背景的图片在元素中的位置

作者: 甚得朕心 | 来源:发表于2018-09-11 23:16 被阅读7次

精确控制背景图片在元素中的位置

上篇我们可以把图片设置为元素的背景,而且也能让它铺满或者不铺满,那么我们同时也能将图片放到一个固定的位置。
需要通过background-position用来精确控制背景 图片在元素中的位置。
通过三种方式来确定图片在水平方向 和垂直方向的起点。

  • 关键字:top right bottom left center
  • 百分比
  • 数值
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>背景与偏移量</title>
    <style>
        .box1{
            width: 1072px;
            height: 560px;
            background-color: red;
            margin: 0 auto;
            background-image: url(img/002.jpg);
            background-repeat: no-repeat;
            /*可以通过数值来指定相对位置*/
            background-position: 50px 50px;
            /*通过关键字来设置方向*/
            /*background-position: bottom right;*/
            /*background-position: left;*/
            /*通过设置页面的百分比来指定位置*/
            /*background-position: 50% 50%;*/
        }
    </style>
</head>
<body>
    <div class="box1"></div>
</body>
</html>

注意写对图片的路径,不然图片无法显示。

背景图片的固定

通过背景图片的固定,我们也能实现犹如网站的购物车图标,不会随着屏幕的滚动而变化。在设置背景图片的时候,最好是设置在<body>内,这样不会因为其他元素的滚动而消失。

CSS Sprite

CSS Sprites是一种网页图片应用处理方式。
好处:

  1. 通过这种方式我们可以将网页中的零星图片集中放到一张大图上,这样只需要网页发送一次请求。
  2. 一次请求便可以同时加载多张图片,大大提高了图片的加载效率,提高了访问效率。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>按钮</title>
    <style type="text/css">
        /*如果我们在不同的状态时,传入三张图片,那么在点击时会闪烁,而且浏览器请求次数增加,每次都得传入图片,增加传输速度。*/
        /*不写图片的位置的时候,就是传入了固定的位置
        而且加载了三次,降低访问次数,增加流量。
        */
        /*只写图片位置的时候,就是传入了一张整合过得图片
        通过移动图片的位置来显示我们所需要的样子*/
        .btn:link{
            display: block;
            width: 93px;
            height: 29px;
            background-image:url(img/btn.png);
            background-repeat: no-repeat;
        }
        .btn:hover{
            background-position: -93px 0px;
            /*background-image: url(img/hover.png);*/
        }
        .btn:active{
            background-position: -186px 0px;
            /*background-image: url(img/active.png);*/
        }
    </style>
</head>
<body>
    <a href='#' class="btn"></a>
</body>
</html>

上面代码中,要么写图片路径在hover 和 acitve中不写位移,那这就是传入三次图片,要么就是不写路径,通过传入一张整合以后的图片,来进行移动,实现我们想要看到的效果。提交加载速度。

相关文章

  • web进阶之十五:关于背景的图片在元素中的位置

    精确控制背景图片在元素中的位置 上篇我们可以把图片设置为元素的背景,而且也能让它铺满或者不铺满,那么我们同时也能将...

  • web进阶之十四:设置元素的背景

    设置元素的背景 设置元素的背景,有背景颜色和背景图片。 设置元素的背景颜色 我们在之前的文章中都一直在用设置背景颜...

  • 背景图片设置

    精确控制背景图片在元素中的位置 可以把图片设置为元素的背景,而且也能让它铺满或者不铺满,那么我们同时也能将图片放到...

  • web局部(antd)主题方案演进

    背景 当web应用存在着预览场景时,在进阶体验中势必存在主题配色这样的需求。 切换主题即整体修改网页中各元素的样式...

  • iphoneX UI备忘

    1.系统背景图更换(标题向上移动) 2.政策界面底图更换 3关于UI元素的位置移动: 3.1主界面(UIMain)...

  • Web元素设计之背景控制

    1. background 该属性集成了所有CSS背景控制的相关内容,书写形式如下(注意顺序): 即:backgr...

  • 10 CSS的背景

    通过CSS背景属性,可以给页面元素添加背景样式。背景属性可以设置背景颜色、背景图片、背景平铺、背景图片位置、背景图...

  • css基础——使用说明

    一、css作用: 给页面元素定义样式,比如字体大小,颜色,背景色,背景图,元素位置等 二、使用方法: 1、在标签内...

  • iconfont技术调研

    iconfont技术调研 iconfont出现背景 正常的Web/App页面包含众多的元素,关于图片部分主要分为三...

  • CSS复习 过渡和旋转

    一、css精灵 css 精灵使用:1、精灵图一定是在某一个限制了宽高大小的元素中作为背景图出现的2、通过背景图位置...

网友评论

    本文标题:web进阶之十五:关于背景的图片在元素中的位置

    本文链接:https://www.haomeiwen.com/subject/bnqpgftx.html