当前位置:首页 > CSS

css 制作字帖

2026-02-13 04:52:12CSS

使用 CSS 制作字帖

基础网格布局

通过 CSS 的 background 属性可以创建网格线,模拟传统字帖的方格或田字格效果。以下代码生成田字格样式:

.practice-sheet {
  background: 
    /* 横线 */
    linear-gradient(to bottom, #ccc 1px, transparent 1px),
    /* 竖线 */
    linear-gradient(to right, #ccc 1px, transparent 1px),
    /* 中心十字线 */
    linear-gradient(to bottom, #f00 1px, transparent 1px),
    linear-gradient(to right, #f00 1px, transparent 1px);
  background-size: 
    100% 20px, /* 横线间距 */
    20px 100%, /* 竖线间距 */
    100% 40px, /* 十字横线间距 */
    40px 100%; /* 十字竖线间距 */
}

动态调整格子大小

使用 CSS 变量实现可调节的格子尺寸,便于适配不同练习需求:

css 制作字帖

:root {
  --grid-size: 24px;
  --center-line-color: #ff6b6b;
}

.adjustable-grid {
  background: 
    repeating-linear-gradient(
      to right,
      #ddd 0 1px,
      transparent 1px var(--grid-size)
    ),
    repeating-linear-gradient(
      to bottom,
      #ddd 0 1px,
      transparent 1px var(--grid-size)
    );
  height: 100vh;
}

毛笔书法效果

模拟毛笔字迹的渐变效果,通过文字阴影和颜色渐变实现:

.calligraphy {
  color: transparent;
  background: linear-gradient(to bottom, #333 30%, #999 70%);
  -webkit-background-clip: text;
  background-clip: text;
  text-shadow: 
    0 1px 0 rgba(0,0,0,0.3),
    0 -1px 0 rgba(255,255,255,0.2);
  font-family: "KaiTi", "STKaiti", serif;
}

交互式临摹功能

结合 HTML5 Canvas 实现可临摹的字帖:

css 制作字帖

<canvas id="copybook" width="600" height="800"></canvas>

<script>
  const canvas = document.getElementById('copybook');
  const ctx = canvas.getContext('2d');

  // 绘制网格
  function drawGrid() {
    ctx.strokeStyle = '#eee';
    for(let i = 0; i < canvas.width; i += 20) {
      ctx.beginPath();
      ctx.moveTo(i, 0);
      ctx.lineTo(i, canvas.height);
      ctx.stroke();
    }
    for(let j = 0; j < canvas.height; j += 20) {
      ctx.beginPath();
      ctx.moveTo(0, j);
      ctx.lineTo(canvas.width, j);
      ctx.stroke();
    }
  }

  // 绘制示例字符
  ctx.font = '48px STKaiti';
  ctx.fillText('永', 100, 100);
</script>

打印优化样式

添加打印专用的 CSS 规则,确保字帖在纸质上的显示效果:

@media print {
  .print-sheet {
    background-color: white !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .grid-line {
    border-color: #999 !important;
  }
}

完整示例代码

以下是一个可直接使用的 HTML/CSS 组合:

<!DOCTYPE html>
<html>
<head>
<style>
  .chinese-copybook {
    width: 100%;
    height: 100vh;
    background: 
      repeating-linear-gradient(#f0f0f0 0 1px, transparent 1px 100%),
      repeating-linear-gradient(90deg, #f0f0f0 0 1px, transparent 1px 100%);
    background-size: 40px 40px;
    position: relative;
    font-family: "STKaiti", "KaiTi", serif;
  }

  .character-model {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 32px;
    color: rgba(0,0,0,0.2);
    pointer-events: none;
  }
</style>
</head>
<body>
  <div class="chinese-copybook">
    <div class="character-model">字</div>
  </div>
</body>
</html>

标签: 字帖css
分享给朋友:

相关文章

css导航栏制作

css导航栏制作

CSS导航栏制作方法 水平导航栏 使用display: inline-block或flexbox布局创建水平导航栏。设置背景色、间距和悬停效果增强视觉体验。 <nav class="horiz…

css怎么制作三角形

css怎么制作三角形

使用边框制作三角形 通过设置元素的边框宽度和颜色,可以创建不同方向的三角形。将元素的宽度和高度设为0,利用边框的透明属性实现。 .triangle-up { width: 0; he…

css怎么制作段落

css怎么制作段落

段落样式基础设置 使用 p 标签定义段落,通过CSS控制字体、间距等属性: p { font-family: Arial, sans-serif; font-size: 16px;…

div和css制作

div和css制作

使用 div 和 CSS 制作网页布局 HTML 结构 通过 div 标签划分页面区域,例如头部、主体、侧边栏和页脚: <div class="container"> <…

css怎么制作首字下沉

css怎么制作首字下沉

首字下沉的实现方法 首字下沉是一种常见的排版效果,通过放大段落的首字母并使其下沉,可以增强文本的视觉吸引力。以下是几种实现方法: 使用::first-letter伪元素 通过CSS的::first-…

css制作卷边效果

css制作卷边效果

使用伪元素和渐变实现卷边效果 通过CSS伪元素和线性渐变可以模拟纸张卷边的视觉效果。这种方法不需要额外元素,仅通过::before或::after伪元素实现。 .element { positi…