当前位置:首页 > CSS

css油画制作

2026-04-01 06:35:13CSS

使用CSS制作油画效果

通过CSS的滤镜和混合模式可以模拟油画的质感,结合背景纹理和颜色调整实现类似效果。

创建基础油画纹理 在HTML中准备一个容器元素,例如<div class="oil-painting"></div>,通过CSS添加纹理背景:

.oil-painting {
  width: 500px;
  height: 400px;
  background: url('canvas-texture.jpg');
  background-size: cover;
}

应用滤镜组合 使用filter属性叠加多个效果,模拟油画的笔触和色彩层次:

.oil-painting {
  filter: 
    blur(1px) 
    contrast(1.2) 
    saturate(1.5);
}

添加笔触效果 通过伪元素和混合模式创建不规则笔触:

.oil-painting::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(45deg, transparent 40%, rgba(255,255,255,0.1) 50%);
  mix-blend-mode: overlay;
}

动态油画效果实现

结合CSS动画和JavaScript可实现动态变化的油画风格。

关键帧动画 定义色彩波动的动画:

@keyframes oil-color-shift {
  0% { filter: hue-rotate(0deg); }
  50% { filter: hue-rotate(15deg); }
  100% { filter: hue-rotate(0deg); }
}

交互控制 通过事件监听调整效果强度:

document.querySelector('.oil-painting').addEventListener('mousemove', (e) => {
  const x = e.clientX / window.innerWidth;
  e.target.style.filter = `blur(${x * 2}px) contrast(${1 + x})`;
});

进阶技巧:SVG滤镜

使用SVG滤镜创建更复杂的油画效果,需在HTML中嵌入SVG滤镜定义:

<svg hidden>
  <filter id="oil-paint">
    <feTurbulence type="fractalNoise" baseFrequency="0.02" numOctaves="3"/>
    <feDisplacementMap in="SourceGraphic" scale="10" xChannelSelector="R" yChannelSelector="G"/>
  </filter>
</svg>

应用SVG滤镜到CSS:

css油画制作

.oil-painting {
  filter: url(#oil-paint);
}

这种方法通过噪声算法生成更自然的笔触纹理,适合需要高精度控制的场景。注意调整baseFrequencyscale参数可获得不同风格的油画效果。

标签: 油画css
分享给朋友:

相关文章

css制作时钟

css制作时钟

CSS 制作时钟的方法 使用纯 CSS 和少量 JavaScript 可以制作一个动态时钟。以下是实现步骤: HTML 结构 <div class="clock"> <div…

css制作详情页

css制作详情页

CSS制作详情页的关键步骤 布局规划 确定详情页的整体布局结构,通常包括头部、商品展示区、参数区、评价区等模块。使用Flexbox或Grid布局实现响应式设计,确保在不同设备上正常显示。 样式设计…

css怎么制作时钟

css怎么制作时钟

使用CSS制作时钟 通过CSS和少量JavaScript可以创建一个动态时钟。以下是实现方法: HTML结构 <div class="clock"> <div class="…

css继承制作教程

css继承制作教程

CSS继承的基本概念 CSS继承是指某些CSS属性可以从父元素传递到子元素的特性。并非所有属性都支持继承,但常见的文本相关属性(如font-family、color)默认具有继承性。通过合理利用继承,…

css下拉框制作

css下拉框制作

使用原生HTML和CSS制作下拉框 HTML的<select>元素结合CSS可以创建基础下拉框: <select class="custom-dropdown"> <…

css熊猫制作

css熊猫制作

使用CSS绘制熊猫的步骤 创建一个熊猫的CSS图形需要利用CSS的border-radius、box-shadow等属性来构建圆形和椭圆形元素。以下是实现方法: HTML结构 <di…