是否可以使用看起来像旧纸的纯 CSS(不使用图像)创建背景纹理,例如:http: //i.stack.imgur.com/kb0Zm.jpg
我知道有限制,纹理不需要像示例那样复杂。
有没有办法在 CSS 中做到这一点?
是否可以使用看起来像旧纸的纯 CSS(不使用图像)创建背景纹理,例如:http: //i.stack.imgur.com/kb0Zm.jpg
我知道有限制,纹理不需要像示例那样复杂。
有没有办法在 CSS 中做到这一点?
我可以建议我的解决方案吗?(在 Chrome v92+、Firefox v90+、Edge v92+ 上测试)。
一点盒子阴影:
#parchment {
position: absolute;
display: flex;
width: 75%;
min-height: calc((1vw + 1vh) * 75);
/* center page with absolute position */
top: 0%; left: 50%; transform: translate(-50%, 0);
margin: 2em 0;
padding: 4em;
box-shadow: 2px 3px 20px black, 0 0 60px #8a4d0f inset;
background: #fffef0;
filter: url(#wavy2);
}
和一些 SVG feTurbulence 作为过滤器:
<svg>
<filter id="wavy2">
<feturbulence x="0" y="0" baseFrequency="0.02" numOctaves="5" seed="1"></feturbulence>
<feDisplacementMap in="SourceGraphic" scale="20" />
</filter>
</svg>
例如: 混合了css和svg的旧羊皮纸
我在 2016 年发现的最好的是这个创建噪声纹理图像的 API。它不是基于聪明的 CSS3,但我只是发布这个,因为其他答案都没有达到 OP 想要的。
http://www.cssmatic.com/noise-texture
请注意该站点的输出 CSS 代码错误。它应该是这样的:
body {
background-image : url(http://api.thumbr.it/whitenoise-361x370.png?background=ffffffff&noise=5c5c5c&density=13&opacity=62);
}
欢迎任何人为该 API 调用建议看起来更像纸的替代参数。如果我想出一个好的答案,我会更新我的答案。
(来源:thumr.it)
它在我的个人网站上看起来不错,并向您展示了纯白色是多么不自然以及在人眼中它是多么不舒服:http: //netgear.rohidekar.com/inventory/books.html
正如这里所回答的(如何使用没有图像的 CSS 创建纹理纸背景)达斯汀说,没有“纹理”CSS 功能。然而,如果你使用 CSS3,你可以做一些很酷的技巧,比如渐变或阴影来制作一些整洁的背景。
不,你可以用 CSS 做的最好的事情是一些渐变。http://www.colorzilla.com/gradient-editor/