html+css实现文字镂空效果并显示背景图片

以下是基于 HTML 和 CSS 的完整代码实现,具体实现了文字镂空效果,并在文字区域显示背景图片,外层区域覆盖一层半透明遮罩以突出文字内容。

html+css实现文字镂空效果并显示背景图片

HTML 结构

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>文字镂空效果</title>
  <link rel="stylesheet" href="styles.css">
</head>
<body>
  <div class="mask">
    <span>文字镂空效果</span>
  </div>
</body>
</html>

CSS 样式

/* 去除默认边距并设置背景图片 */
body {
  margin: 0;
  height: 100vh;
  background: url('./img.jpeg') no-repeat center/cover; /* 全屏背景 */
}

/* 半透明遮罩容器 */
.mask {
  height: 100%;
  display: flex; /* 启用 Flex 布局 */
  justify-content: center; /* 水平居中 */
  align-items: center; /* 垂直居中 */
  background: rgba(0, 0, 0, 0.7); /* 半透明黑色背景 */
}

/* 镂空文字效果 */
.mask span {
  font-size: 24vh; /* 根据视窗高度动态调整文字大小 */
  font-weight: bold; /* 文字加粗以提升视觉效果 */
  color: transparent; /* 文字颜色透明 */
  -webkit-text-stroke: 1px #fff; /* 添加白色描边 */
  background: url('./img.jpeg') no-repeat center/cover; /* 文字内部背景图 */
  -webkit-background-clip: text; /* 背景裁剪到文字 */
  background-clip: text; /* 兼容性属性 */
}

效果说明

  1. 背景图片:
    • 页面背景通过 bodybackground 属性设置,背景图充满整个视口,采用居中显示且覆盖布局。
  2. 遮罩层:
    • .mask 设置半透明黑色背景,提升文字的可见性和对比度。
  3. 镂空文字:
    • 核心属性:
      • color: transparent:将文字颜色设置为透明,确保文字内容本身不显示。
      • background-clip: text:将背景裁剪到文字区域,仅在文字区域显示背景图。
      • -webkit-text-stroke:通过白色描边增强文字轮廓,增加与背景的区分度。
    • 字体大小 font-size 使用视口单位(vh),使其能根据屏幕高度动态调整,适配不同设备。

实现效果的扩展

  1. 动态背景:
    • 通过 CSS 动画(@keyframes)为背景图片添加移动效果,实现背景动态流动。
  2. 响应式设计:
    • 使用媒体查询调整文字大小或遮罩透明度,适配小屏幕设备。

效果描述

最终效果是,页面显示一张背景图片,并在中心以镂空的文字显示“文字镂空效果”。文字区域透过背景,形成镂空效果,而非文字部分由半透明黑色遮罩覆盖。

此方法不仅适用于静态设计,还能在动态背景、广告页或引导页面中增加视觉吸引力。

原创文章,作者:北单,如若转载,请注明出处:https://www.beidandianzhu.com/g/547.html

(0)
北单的头像北单
上一篇 2024-12-03 10:38:35
下一篇 2024-12-03 10:43:52

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

分享本页
返回顶部