CSS 背景

CSS 背景属性用于定义元素的背景效果。

在这些章节中,您将学习如下 CSS 背景属性:

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

CSS background-color

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

页面的背景色设置如下:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. body {
  6. background-color: lightblue;
  7. }
  8. </style>
  9. </head>
  10. <body>
  11. <h1>Hello World!</h1>
  12. <p>此页面拥有浅蓝色背景色!</p>
  13. </body>
  14. </html>

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

  • 有效的颜色名称 - 比如 "red"
  • 十六进制值 - 比如 "#ff0000"
  • RGB 值 - 比如 "rgb(255,0,0)"

请查看 CSS 颜色值,获取可能颜色值的完整列表。


其他元素

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

在这里,<h1>、<p> 和 <div> 元素将拥有不同的背景色:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. h1 {
  6. background-color: green;
  7. }
  8. div {
  9. background-color: lightblue;
  10. }
  11. p {
  12. background-color: yellow;
  13. }
  14. </style>
  15. </head>
  16. <body>
  17. <h1>CSS background-color 实例</h1>
  18. <div>
  19. 这是 div 元素内的文本。
  20. <p>本段有其自己的背景色。</p>
  21. 我们仍然在 div 元素中。
  22. </div>
  23. </body>
  24. </html>

不透明度 / 透明度

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

opacity 1
opacity 0.6
opacity 0.3
opacity 0.1
实例
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. div {
  6. background-color: green;
  7. }
  8. div.first {
  9. opacity: 0.1;
  10. }
  11. div.second {
  12. opacity: 0.3;
  13. }
  14. div.third {
  15. opacity: 0.6;
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <h1>透明框</h1>
  21. <p>当使用 opacity 属性为元素背景添加透明度时,其所有子元素也会变为透明。这可能会使完全透明的元素内的文本难以阅读:</p>
  22. <div class="first">
  23. <h1>opacity 0.1</h1>
  24. </div>
  25. <div class="second">
  26. <h1>opacity 0.3</h1>
  27. </div>
  28. <div class="third">
  29. <h1>opacity 0.6</h1>
  30. </div>
  31. <div>
  32. <h1>opacity 1(默认)</h1>
  33. </div>
  34. </body>
  35. </html>

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


使用 RGBA 的透明度

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

下面的例子设置背景色而不是文本的不透明度:

100% opacity
60% opacity
30% opacity
10% opacity

您从我们的 CSS 颜色 章节中学到了可以将 RGB 用作颜色值。除 RGB 外,还可以将 RGB 颜色值与 alpha 通道一起使用(RGBA) - 该通道指定颜色的不透明度。

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

实例
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. div {
  6. background: rgb(0, 128, 0);
  7. }
  8. div.first {
  9. background: rgba(0, 128, 0, 0.1);
  10. }
  11. div.second {
  12. background: rgba(0, 128, 0, 0.3);
  13. }
  14. div.third {
  15. background: rgba(0, 128, 0, 0.6);
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <h1>透明框</h1>
  21. <p>使用 opacity:</p>
  22. <div style="opacity:0.1;">
  23. <h1>10% opacity</h1>
  24. </div>
  25. <div style="opacity:0.3;">
  26. <h1>30% opacity</h1>
  27. </div>
  28. <div style="opacity:0.6;">
  29. <h1>60% opacity</h1>
  30. </div>
  31. <div>
  32. <h1>opacity 1</h1>
  33. </div>
  34. <p>使用 RGBA 颜色值:</p>
  35. <div class="first">
  36. <h1>10% opacity</h1>
  37. </div>
  38. <div class="second">
  39. <h1>30% opacity</h1>
  40. </div>
  41. <div class="third">
  42. <h1>60% opacity</h1>
  43. </div>
  44. <div>
  45. <h1>默认</h1>
  46. </div>
  47. <p>注意使用 opacity 属性时文本以及背景颜色如何变得透明。</p>
  48. </body>
  49. </html>

深入学习 CSS 背景

通过这些链接,您可以继续学习有关 背景图像背景重复背景附着 以及 简写背景 的更多知识。