Appearance
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
html,
body {
width: 100vw;
height: 100vh;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
</style>
</head>
<body>
<canvas id="canvas"></canvas>
<script>
const canvas = document.getElementById('canvas')
const context = canvas.getContext('2d')
canvas.style.background = '#ddd'
canvas.width = 800
canvas.height = 800
const drawGrid = (context, gridColor, lineWidth, gapX, gapY) => {
const { width, height } = context.canvas
context.lineWidth = lineWidth
context.strokeStyle = gridColor
// 横线
for (let i = gapY + lineWidth; i < height; i += gapY) {
context.beginPath()
context.moveTo(0, i)
context.lineTo(width, i)
context.stroke()
}
// 竖线
for (let i = gapX + lineWidth; i < width; i += gapX) {
context.beginPath()
context.moveTo(i, 0)
context.lineTo(i, height)
context.stroke()
}
}
drawGrid(context, 'red', 0.5, 20, 20)
</script>
</body>
</html>