编程笔记 html5&css&js 038 CSS背景

编程笔记 html5&css&js 038 CSS背景

  • [一、CSS 背景属性](#一、CSS 背景属性)
  • [二、CSS background-color](#二、CSS background-color)
  • [三、不透明度 / 透明度](#三、不透明度 / 透明度)
  • [四、使用 RGBA 的透明度](#四、使用 RGBA 的透明度)
  • [五、CSS 背景图像](#五、CSS 背景图像)
  • [六、CSS 背景重复](#六、CSS 背景重复)
    • [CSS background-repeat](#CSS background-repeat)
    • [CSS background-repeat: no-repeat](#CSS background-repeat: no-repeat)
    • [CSS background-position](#CSS background-position)
  • 七、练习
  • [小结:所有 CSS 背景属性](#小结:所有 CSS 背景属性)

背景在样式当中首当其冲,一开始我就讲这背景很重要,背景过亮伤眼是一个重要问题,合理配置背景色,改善感观效果,也是网页设计的一件重要的事。CSS 背景属性用于定义元素的背景效果。

一、CSS 背景属性

这些属性都和背景有关。

background-color

background-image

background-repeat

background-attachment

background-position

二、CSS background-color

background-color 属性指定元素的背景色。

body {
  background-color: lightblue;
}

通过 CSS,颜色通常由以下方式指定:

有效的颜色名称 - 比如 "red"

十六进制值 - 比如 "#ff0000"

RGB 值 - 比如 "rgb(255,0,0)"

颜色值前面已经讲过,回去查看。

您可以为任何 HTML 元素设置背景颜色:

h1 {
  background-color: green;
}
div {
  background-color: lightblue;
}
p {
  background-color: yellow;
}

三、不透明度 / 透明度

opacity 属性指定元素的不透明度/透明度。取值范围为 0.0 - 1.0。值越低,越透明:

div {
  background-color: green;
  opacity: 0.3;
}

注意:使用 opacity 属性为元素的背景添加透明度时,其所有子元素都继承相同的透明度。这可能会使完全透明的元素内的文本难以阅读。

四、使用 RGBA 的透明度

如果您不希望对子元素应用不透明度,例如上面的例子,请使用 RGBA 颜色值。

RGBA 颜色值指定为:rgba(red, green, blue, alpha)。alpha 参数是介于 0.0(完全透明)和 1.0(完全不透明)之间的数字。

div {
  background: rgba(0, 128, 0, 0.3) /* 30% 不透明度的绿色背景 */
}

五、CSS 背景图像

background-image 属性指定用作元素背景的图像。

默认情况下,图像会重复,以覆盖整个元素。

body {
  background-image: url("bgdesert.jpg");
}

注意:使用背景图像时,请使用不会干扰文本的图像。

还可以为特定元素设置背景图像,例如 <p> 元素:

p {
  background-image: url("paper.gif");
}

六、CSS 背景重复

CSS background-repeat

默认情况下,background-image 属性在水平和垂直方向上都重复图像。

某些图像应只适合水平或垂直方向上重复,否则它们看起来会很奇怪,如下所示:

body {
  background-image: url("gradient_bg.png");
}

如果上面的图像仅在水平方向重复 (background-repeat: repeat-x;),则背景看起来会更好:

body {
  background-image: url("gradient_bg.png");
  background-repeat: repeat-x;
}

如需垂直重复图像,请设置 background-repeat: repeat-y;。

CSS background-repeat: no-repeat

background-repeat 属性还可指定只显示一次背景图像:

背景图像仅显示一次:

body {
  background-image: url("tree.png");
  background-repeat: no-repeat;
}

背景图像与文本放置在同一位置。我们想要更改图像的位置,以免图像过多干扰文本。

CSS background-position

background-position 属性用于指定背景图像的位置。

把背景图片放在右上角:

body {
  background-image: url("tree.png");
  background-repeat: no-repeat;
  background-position: right top;
}

七、练习

<!DOCTYPE html>
<html lang="zh-cn">
   <title>编程笔记 html5&css&js CSS背景</title>
   <meta charset="utf-8" />
   <style>
      body {
         display: flex;
         justify-content: center; /* 水平居中 */
         align-items: center; /* 垂直居中(如果需要的话) */
         height: 100vh; /* 使整个视窗区域生效 */
         color: cyan;
         background: teal;
      }
      div {
         width: 350px; /* 设置容器的宽度 */
         height: 260px;
         border: 1px solid #333;
         padding: 2px 2px;
      }
      #c1 {
         background: red;
         opacity: 0.5;
      }
      #c2 {
         background: yellow;
         opacity: 0.6;
      }
      #c3 {
         background: blue;
         opacity: 0.7;
      }
      #c4 {
         background: orange;
         opacity: 0.8;
      }
   </style>
   <body>
      <div id="c1"></div>
      <div id="c2"></div>
      <div id="c3"></div>
      <div id="c4"></div>
   </body>
</html>

小结:所有 CSS 背景属性

属性	描述
background	在一条声明中设置所有背景属性的简写属性。
background-attachment	设置背景图像是固定的还是与页面的其余部分一起滚动。
background-clip	规定背景的绘制区域。
background-color	设置元素的背景色。
background-image	设置元素的背景图像。
background-origin	规定在何处放置背景图像。
background-position	设置背景图像的开始位置。
background-repeat	设置背景图像是否及如何重复。
background-size	规定背景图像的尺寸。

还是颜色更有用。

相关推荐
别拿曾经看以后~16 分钟前
【el-form】记一例好用的el-input输入框回车调接口和el-button按钮防重点击
javascript·vue.js·elementui
我要洋人死19 分钟前
导航栏及下拉菜单的实现
前端·css·css3
川石课堂软件测试21 分钟前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
JerryXZR36 分钟前
前端开发中ES6的技术细节二
前端·javascript·es6
problc1 小时前
Flutter中文字体设置指南:打造个性化的应用体验
android·javascript·flutter
Gavin_9151 小时前
【JavaScript】模块化开发
前端·javascript·vue.js
懒大王爱吃狼2 小时前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
待磨的钝刨3 小时前
【格式化查看JSON文件】coco的json文件内容都在一行如何按照json格式查看
开发语言·javascript·json
前端青山8 小时前
Node.js-增强 API 安全性和性能优化
开发语言·前端·javascript·性能优化·前端框架·node.js
从兄9 小时前
vue 使用docx-preview 预览替换文档内的特定变量
javascript·vue.js·ecmascript