CSS设置网页背景

news2025/1/15 20:03:05

目录

概述:

1.background-color:

2.background-image:

 3.background-repeat:

 4.background-position:

5.background-attachment:

 6.background-size:

7.background-origin:

8.background-clip:

9.background:


概述:

我们在制作网页时给网页的背景添加一点东西,能让网页变得更加美观,更能留住用户。如下是一些用于设置HTML元素背景效果的属性:

  • background-color:可以用来设置网页背景的颜色。
  • background-image:可以用来设置网页的背景图片。
  • background-repeat:可以用来控制背景图片是否要重复。
  • background-attachment:可以控制背景图是否需要跟随窗口的滚动。
  • background-position:可以控制图像在元素中的位置。
  • background-size:可以控制图像的大小。
  • background-origin:可以设置background-position属性相对于什么属性来定义背景图像的。
  • background-clip:可以用来设置背景图像显示的区域。
  • background:是背景图的缩写,可以在一个这一个声明里面设置所有的背景属性。

初识CSS-CSDN博客 HTML简介-CSDN博客


1.background-color:

如要为元素设置一个background-color属性,此属性支持以下几个值:

说明
color_name使用颜色的名字来为元素设置背景颜色(如:blue)。
hex_number使用十六进制来为元素设置背景颜色(如:#f00)
rgb_number使用rgb()函数来为元素额设置背景颜色(如:rgb(255,0,0))
transparent默认值,设置背景颜色为透明。
inherit从父元素里继承背景颜色。

示例代码如下: 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .BC {
            color: rgb(17, 156, 184);
            background-color: red;
            margin: 20px;
            /*设置外边距为 20px*/
            padding: 20px;
            /*设置内边距为 20px*/
            border: 10px dotted green;
            /*设置一个宽 10px 的黄色虚线边框*/
        }
    </style>
</head>

<body>
    <div class="BC">background-color属性的内容区域</div>
</body>

</html>

代码运行结果如下图:

从上图我们可以看出来background-color属性可以为元素设置一种颜色的背景,这种样色会填充元素的内容,边框以及内边距但是不会填充边框以外的区域。

2.background-image:

在CSS中我们可以使用background-image来为HTML元素设置背景图像,在默认情况下浏览器会把图像从左上角开始,在水平垂直方向上重复背景图像,用来填满这个元素,你可以使用background-repeat属性来控制背景是否重复或者如何重复。background-image属性的值如下:

说明
url('URL')用来指向图像,url()括号里面的URL是图像的具体路径。
none默认值,不显示背景图。
inherit从父元素中集成背景图的设置。

背景图的区域更上述的背景颜色的区域是相同的。示例代码如下,其中url中的图片路径可以自己选择:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .BC {
            color: rgb(17, 156, 184);
            background-color: red;
            margin: 20px;
            /*设置外边距为 20px*/
            padding: 20px;
            /*设置内边距为 20px*/
            border: 10px dotted green;
            /*设置一个宽 10px 的黄色虚线边框*/
            background-image: url(./img/06EE610BCC0208A67AFC6C4FB2DF97A2.jpg);
        }
    </style>
</head>

<body>
    <div class="BC">属性的内容区域</div>
</body>

</html>

运行结果如下: 

 3.background-repeat:

在默认情况下图像会从元素内容左上角开始(包括内边距),在水平和垂直方向开始重复用来填充整个元素(但是填充的范围不包括外边距),你可以使用background-repeat属性来控制图像是否要重复或者如何重复图像,该属性的值如下:

说明
repeat默认值,背景图将会在垂直方向和水平方向重复。
repeat-x图像只会在水平方向上重复。
repeat-y图像只会在垂直方向上重复。
no-repeat图像仅显示一次,不会在任何方向上重复。
inherit从父元素继承background-repeat属性。

示例代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .BC {
            color: rgb(17, 156, 184);
            background-color: red;
            margin: 20px;
            /*设置外边距为 20px*/
            padding: 20px;
            /*设置内边距为 20px*/
            border: 10px dotted green;
            /*设置一个宽 10px 的黄色虚线边框*/
            background-image: url(./img/06EE610BCC0208A67AFC6C4FB2DF97A2.jpg);
            background-repeat: repeat-x;
        }
    </style>
</head>

<body>
    <div class="BC">属性的内容区域</div>
</body>

</html>

代码运行结果如下:

 4.background-position:

我们可以使用background-position属性来设置图像的开始位置,属性的可选值如下:

说明

left top(左上),

left center(左中),

left bottom(左下),

right top(右上),

right bottom(右下),

center top(中上),

center center(居中),

center bottom(中下)

使用 一些关键词来表示背景图的位置,如果你只设置了第一个关键字,那么第二个关键词将会是center。
x% y%使用百分比来表示图像距离元素左上角的距离,x%是水平方向,y%是垂直方向,左上角为0% 0%,右下角是100% 100%,如果只设置第一个值,那么另一个值就会是50%,默认的值为0% 0%。
xpos ypos使用像素(px)或者其他单位来表示图像距离元素左上角的距离,xpos是水平方向,ypos是垂直方向,左上角为0px 0px,右下角要看元素的尺寸,百分比和单位可以混用,如果仅设置第一个值,那么另外一个值默认为50%。

 示例代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .BC {
            color: rgb(17, 156, 184);
            background-color: red;
            margin: 20px;
            /*设置外边距为 20px*/
            padding: 20px;
            /*设置内边距为 20px*/
            border: 10px dotted green;
            background-position: 0% 50%;
            /*设置一个宽 10px 的黄色虚线边框*/
            background-image: url(./img/06EE610BCC0208A67AFC6C4FB2DF97A2.jpg);
            background-repeat: repeat-x;
        }
    </style>
</head>

<body>
    <div class="BC">属性的内容区域</div>
</body>

</html>

5.background-attachment:

background-attachment是用来设置背景图的位置的让背景图是固定在页面的某个地方还是跟随页面一起动,该属性的值如下:

说明
scroll默认值,让页面跟随页面一起滚动。
fixed页面滚动时,背景不动。
inherit从父元素中继承background-attachment属性。

示例代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .PageSize {
            background-image: url(./img/06EE610BCC0208A67AFC6C4FB2DF97A2.jpg);
            width: 100%;
            height: 1000px;
            background-attachment: fixed;
        }
    </style>
</head>

<body>
    <div class="PageSize">这是一个简陋的页面</div>
    <ul>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
    <ol>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ol>
    <p>这是底部的内容</p>
</body>

</html>

我们来一步一步仔细观察background-attachment: fixed;的作用,当滚动条到最后时图像只有一部分区域可以用来显示。

当滚动条到中间时图像有大部分区域可以用来显示。从此我们可以看出如果给图像设置fixe值那么图像的显示将会跟随滚动条。

 6.background-size:

在CSS中我们可以使用background-size来设置背景图的尺寸,该属性的值如下:

说明

xpos

ypos

使用像素(px)或者其他的CSS单位来设置背景的宽度和高度,xpos是宽度,ypos是高度,如果只设置第一个值那么第二个值将会被设置为默认值auto(自动)。
x% y%使用百分比来表示背景图他是相对于所在的元素的宽度与高度的百分比,x%表示宽度,y%表示高度,如果只设置第一个值,那么第二个值将会被自动设置为默认值auto(自动)。
cover保持背景图像的横纵比例并将图像缩放足够大,使背景图像可以完全覆盖元素所在的区域,这样可能会导致图像的某些部分超出元素而无法显示。
contain保持背景图像的横纵比例并将图像缩放至足够大,使背景图可以完整的显示元素所在的区域,这样可能导致背景图无法完整覆盖整个元素区域。

图像的示例代码如下所示: 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .PageSize {
            background-image: url(./img/06EE610BCC0208A67AFC6C4FB2DF97A2.jpg);
            width: 100%;
            height: 1000px;
            /* background-attachment: fixed; */
            background-size: contain;
        }
    </style>
</head>

<body>
    <div class="PageSize">这是一个简陋的页面</div>

    <p>这是底部的内容</p>
</body>

</html>

下图中的图像是完整的显示在页面中了:

7.background-origin:

background-origin是CSS3中增加的属性,我们使用background-position来设置背景图的位置时,默认是以元素的左上角来进行计算的,不仅如此还可以使用background-origin属性来设置background-position属性相对于那个位置来定位图像,background-origin的可选值如下:

说明
padding-box相对于元素的内边距来定位背景图。
border-box相对于元素的边框区域来定位背景图。
content-box相对于元素的内容区域来定位背景图。

8.background-clip:

background-clip是CSS3中新增的属性,通过它可以设置背景图像显示的区域,background-clip属性的可选值如下:

说明
border-box默认值,在元素边框以及内容区域显示背景图像。
padding-box在元素的边框以及内容区域显示背景图像。
content-box在元素的内容区域显示背景图像。

9.background:

background是背景属性的简写,它可以为某个元素设置某个背景属性,还可以给多个元素或者是所有的元素设置背景属性,设置的背景属性没用固定的顺序,如下是推荐的顺序设置:

background-color || background-image || background-position [/ background-size]? || background-repeat || background-attachment || background-origin || background-clip

在设置background时需要注意的是:

  • 每个属性之间要使用空格来分开。
  • 如果同时设置background-positionbackground-size属性,这两个属性之间就需要使用/来进行分割了,并且还要遵循background-position属性在background-size属性后面的这个顺序。
  • 如果设置了background-origin属性和background-clip属性,就需要遵循background-origin属性在前  background-clip属性在后的顺序,如果background-origin属性与background-clip属性的值是相同的话那么此时设置其中一个值即可。

示例代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .PageSize {
            width: 100%;
            height: 1000px;
            /* background-attachment: fixed; */
            background: url(./img/06EE610BCC0208A67AFC6C4FB2DF97A2.jpg) fixed content-box;
        }
    </style>
</head>

<body>
    <div class="PageSize">这是一个简陋的页面</div>

    <p>这是底部的内容</p>
</body>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1569699.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】Ubuntu 磁盘管理

准备一个U盘或者SD卡&#xff08;含读卡器&#xff09;&#xff0c;并将其格式化成 FAT32 格式&#xff0c;不要使用NTFS格式&#xff08;这是微软的专利&#xff0c;大部分Linux系统不支持&#xff09;和exFAT格式&#xff08;有的Linux系统也不支持&#xff09;。 如果Ubun…

Linux云计算之Linux基础2——Linux发行版本的安装

目录 一、彻底删除VMware 二、VMware-17虚拟机安装 三、MobaXterm 安装 四、Centos 发行版 7.9的安装 五、rockys 9.1的安装 六、ubuntu2204的安装 一、彻底删除VMware 在卸载VMware虚拟机之前&#xff0c;要先把与VMware相关的服务和进程终止 1. 在windows中按下【Windo…

【算法练习】28:选择排序学习笔记

一、选择排序的算法思想 弄懂选择排序算法&#xff0c;先得知道两个概念&#xff1a;未排序序列&#xff0c;已排序序列。 原理&#xff1a;以升序为例&#xff0c;选择排序算法的思想是&#xff0c;先将整个序列当做未排序的序列&#xff0c;以序列的第一个元素开始。然后从左…

Python快速入门系列-7(Python Web开发与框架介绍)

第七章:Python Web开发与框架介绍 7.1 Flask与Django简介7.1.1 Flask框架Flask的特点Flask的安装一个简单的Flask应用示例7.1.2 Django框架Django的特点Django的安装一个简单的Django应用示例7.2 前后端交互与数据传输7.2.1 前后端交互7.2.2 数据传输格式7.2.3 示例:使用Flas…

蓝桥杯23年第十四届省赛-异或和之和|拆位、贡献法

题目链接&#xff1a; 蓝桥杯2023年第十四届省赛真题-异或和之和 - C语言网 (dotcpp.com) 1.异或和之和 - 蓝桥云课 (lanqiao.cn) 参考题解&#xff1a; 蓝桥杯真题讲解&#xff1a;异或和之和 &#xff08;拆位、贡献法&#xff09;-CSDN博客 洛谷P9236 [蓝桥杯 2023 省 A]…

2024 年最新使用 Wechaty 开源框架搭建部署微信机器人(微信群智能客服案例)

读取联系人信息 获取当前机器人账号全部联系人信息 bot.on(ready, async () > {console.log("机器人准备完毕&#xff01;&#xff01;&#xff01;")let contactList await bot.Contact.findAll()for (let index 0; index < contactList.length; index) {…

STC89C51学习笔记(二)

STC89C51学习笔记&#xff08;二&#xff09; 综述&#xff1a;本文简要介绍了51单片机以及示例了如何成功运行一个程序&#xff08;点亮一个LED&#xff09;。 一、单片机介绍 单片机简称MCU&#xff0c;MCUCPURAMROM定时器中断系统通讯协议等单片机任务是信息采集、处理、…

Go 源码之互斥锁 Mutex

文章目录 一、总结二、源码&#xff08;一&#xff09;Mutex&#xff08;二&#xff09; Lock&#xff08;三&#xff09;Unlock 三、常见问题有劳各位看官 点赞、关注➕收藏 &#xff0c;你们的支持是我最大的动力&#xff01;&#xff01;&#xff01;接下来会不断更新 golan…

2.Swift基础控件:图标文字按钮

Swift图标标题按钮 一、自定义IconTitleButton类 import Foundation/* 枚举 设置 图片的位置 */ enum ButtonImagePosition : Int {case imageTop 0case imageLeftcase imageBottomcase imageRight } extension UIButton {/**type &#xff1a;image 的位置Space &#xff1…

代码审计-PHP原生开发篇SQL注入数据库监控正则搜索文件定位静态分析

文章目录 前言1、Bluecms-CNVD-1Day-常规注入审计分析2、emlog-CNVD-1Day-常规注入审计分析3、emlog-CNVD-1Day-2次注入审计分析 前言 挖掘技巧&#xff1a; -语句监控-数据库SQL监控排查可利用语句定向分析 -功能追踪-功能点文件SQL执行代码函数调用链追踪 -正则搜索-(update…

时序预测 | Matlab实现SOM-BP自组织映射结合BP神经网络时间序列预测

时序预测 | Matlab实现SOM-BP自组织映射结合BP神经网络时间序列预测 目录 时序预测 | Matlab实现SOM-BP自组织映射结合BP神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现SOM-BP自组织映射结合BP神经网络时间序列预测&#xff08;完整源码…

Flutter-发布插件到pub上传不上问题

问题1&#xff1a; 尝试指令&#xff1a; flutter packages pub publish --serverhttps://pub.dartlang.org问题2&#xff1a; 问题1解决后&#xff0c;进入验证身份&#xff0c;点击终端显示的链接&#xff0c;跳转到google验证&#xff0c;记得这里要科*学上网&#xff0c;点…

Collection与数据结构 链表与LinkedList(三):链表精选OJ例题(下)

1. 分割链表 OJ链接 class Solution {public ListNode partition(ListNode head, int x) {if(head null){return null;//空链表的情况}ListNode cur head;ListNode formerhead null;ListNode formerend null;ListNode latterhead null;ListNode latterend null;//定义…

阿里云服务器配置CPU内存带宽ECS规格如何选择?8000元预算

8000元预算如何选择阿里云服务器配置&#xff1f;八千预算可选的阿里云服务器配置相当高了&#xff0c;这个预算可以购买阿里云企业级独享型云服务器&#xff0c;至少8核以上的配置&#xff0c;这个预算可以支持复杂、高负载或大规模的业务需求。阿里云服务器网整理8000元/月预…

pycharm和Spyder多行注释快捷键

1.选取注释内容 2.pycharm&#xff1a;使用Ctrl/ 3.Spyder&#xff1a;使用Ctrl1 效果图

数字乡村创新实践探索:科技赋能农业现代化与乡村治理体系现代化同步推进

随着信息技术的飞速发展&#xff0c;数字乡村作为乡村振兴的重要战略方向&#xff0c;正日益成为推动农业现代化和乡村治理体系现代化的关键力量。科技赋能下的数字乡村&#xff0c;不仅提高了农业生产的效率和品质&#xff0c;也为乡村治理带来了新的机遇和挑战。本文旨在探讨…

接口调用成功后端却一直返回404

vuespringboot 我在vue.config.js中配置了向后端的反向代理 然后使用了axios向后端发送post请求 可以看到可以接收到前端传来的值 但是前端控制台却报了 “xhr.js:245POST http://localhost:7777/api/login 404 (Not Found)” 最后询问我那智慧的堂哥... ... 解决办法是把C…

DFS:深搜+回溯+剪枝解决矩阵搜索问题

创作不易&#xff0c;感谢三连&#xff01;&#xff01; 一、N皇后 . - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<vector<string>> ret;vector<string> path;bool checkcol[9];bool checkdig1[18];bool checkdig2[18];int n…

Chat-REC: Towards Interactive and Explainable LLMs-Augmented Recommender System

1、动机 推荐系统被应用于推荐服务&#xff0c;提高人们的生活质量&#xff0c;但仍存在一些问题。缺少交互性、可解释性&#xff0c;缺乏反馈机制&#xff0c;以及冷启动和跨域推荐。 Chat-Rec 将用户画像和历史交互转换为 Prompt&#xff0c;有效地学习用户的偏好&#xff…

Chapter 1 - 9. Introduction to Congestion in Storage Networks

Terminology iSCSI uses the terminology of initiator (or iSCSI client) and target (or iSCSI server). NVMe/TCP uses the terminology of host and controller respectively. iSCSI 使用的术语是启动程序(或 iSCSI 客户端)和目标程序(或 iSCSI 服务器)。NVMe/TCP 分别…