使用CSS实现黑白格背景效果


Posted in HTML / CSS onJune 01, 2022

需求介绍

在页面上,有时会需要展示一些透明背景的图片,为了展示其透明的背景,通常会像PS一样,使用黑白相间的格子组成背景,从而告诉用户,这是一张透明的图片。

效果预览

使用CSS实现黑白格背景效果

实现原理

1.利用渐变(background: linear-gradient())的效果来实现黑白相间,如下代码:

<style>
    #app {
	width: 200px;
	height: 200px;
	background: linear-gradient(
      		rgba(0, 0, 0, 0.4) 25%,
      		transparent 25%,
      		transparent 75%,
      		rgba(0, 0, 0, 0.4) 75%,
                rgba(0, 0, 0, 0.4) 100%
        )
    }
</style>
</head>

<body>
	<div id="app"></div>
</body>

效果:

使用CSS实现黑白格背景效果

2.然后加以旋转,使渐变背景倾斜,代码:

#app {
	width: 200px;
	height: 200px;
        background: linear-gradient(
                45deg,
      		rgba(0, 0, 0, 0.4) 25%,
      		transparent 25%,
      		transparent 75%,
      		rgba(0, 0, 0, 0.4) 75%,
                rgba(0, 0, 0, 0.4) 100%
       );
}

效果:

使用CSS实现黑白格背景效果

3.然后设置背景大小,并且使其自动平铺填充background-repeat:repeat;, 因为默认就是平铺,所以不用特地设置这个值,只需设置背景大小即可:

#app {
	width: 200px;
	height: 200px;
        background: linear-gradient(
                45deg,
      		rgba(0, 0, 0, 0.4) 25%,
      		transparent 25%,
      		transparent 75%,
      		rgba(0, 0, 0, 0.4) 75%,
                rgba(0, 0, 0, 0.4) 100%
       );
       background-size: 20px 20px;
       
}

效果:

使用CSS实现黑白格背景效果

4.通过以上操作,发现基本实现了一半的效果,毕竟需求是方格,而不是三角形,那么每个格子只需要再来一个三角形即可,为了方便区分,另一个颜色先设置为red:

#app {
  width: 200px;
  height: 200px;
  background: linear-gradient(
      45deg,
      rgba(0, 0, 0, 0.4) 25%,
      transparent 25%,
      transparent 75%,
      rgba(0, 0, 0, 0.4) 75%,
      rgba(0, 0, 0, 0.4) 100%
    ),
    linear-gradient(
      45deg,
      red 25%,
      transparent 25%,
      transparent 75%,
      red 75%,
      red 100%
    );
}

效果:

使用CSS实现黑白格背景效果

5.可以看到,两种渐变重叠在一起,这时候需要分别设置两种渐变起始位置,使其分开,为了实现这个效果,将红色渐变的起始位置向左、向下平移背景大小一半的距离:

#app {
  width: 200px;
  height: 200px;
  background: linear-gradient(
      45deg,
      rgba(0, 0, 0, 0.4) 25%,
      transparent 25%,
      transparent 75%,
      rgba(0, 0, 0, 0.4) 75%,
      rgba(0, 0, 0, 0.4) 100%
    ),
    linear-gradient(
      45deg,
      red 25%,
      transparent 25%,
      transparent 75%,
      red 75%,
      red 100%
    );
  background-position: 0 0, 100px 100px;
}

效果:

使用CSS实现黑白格背景效果

6.到此为止,已经实现我们需要效果了,接下来只需要将红色设置为灰色,然后设置背景的大小,将背景平铺即可,完整代码如下:

#app {
  width: 200px;
  height: 200px;
  background: linear-gradient(
      45deg,
      rgba(0, 0, 0, 0.4) 25%,
      transparent 25%,
      transparent 75%,
      rgba(0, 0, 0, 0.4) 75%,
      rgba(0, 0, 0, 0.4) 100%
    ),
    linear-gradient(
      45deg,
      rgba(0, 0, 0, 0.4) 25%,
      transparent 25%,
      transparent 75%,
      rgba(0, 0, 0, 0.4) 75%,
      rgba(0, 0, 0, 0.4) 100%
    );
    /* 背景大小必须小于盒子的大小 */
    background-size: 20px 20px;
    /* 第二种渐变的偏移必须为为背景大小的一半 */
    background-position: 0 0, 10px 10px;
}

效果:

使用CSS实现黑白格背景效果

至此,黑白格背景效果实现完毕。

到此这篇关于使用CSS实现黑白格背景效果的文章就介绍到这了,更多相关css黑白格背景内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
真正了解CSS3背景下的@font face规则
May 04 HTML / CSS
让IE6支持css3,让 IE7、IE8 都支持CSS3
Oct 09 HTML / CSS
CSS去掉A标签(链接)虚线框的方法
Apr 01 HTML / CSS
css3新增颜色表示方式分享
Apr 15 HTML / CSS
纯CSS实现设置半个字符的样式
Jul 03 HTML / CSS
CSS3属性box-sizing使用指南
Dec 09 HTML / CSS
css3实现背景模糊的三种方式(小结)
May 15 HTML / CSS
HTML5 input元素类型:email及url介绍
Aug 13 HTML / CSS
让IE下支持Html5的placeholder属性的插件
Sep 02 HTML / CSS
H5混合开发app如何升级的方法
Jan 10 HTML / CSS
h5使用canvas画布实现手势解锁
Jan 04 HTML / CSS
基于Html5实现的语音搜索功能
May 13 HTML / CSS
HTML中实现音乐或视频自动播放案例详解
May 30 #HTML / CSS
CSS文本阴影 text-shadow 悬停效果详解
May 25 #HTML / CSS
HTML页面中使两个div并排显示的实现
May 15 #HTML / CSS
html中相对位置与绝对位置的具体使用
CSS 左边固定宽右边自适应的6种方法
May 15 #HTML / CSS
解决flex布局中子项目尺寸不受flex-shrink限制
May 11 #HTML / CSS
css3 选择器
May 11 #HTML / CSS
You might like
php通过字符串调用函数示例
2014/03/02 PHP
php实现读取内存顺序号
2015/03/29 PHP
【消息提示组件】,兼容IE6/7&amp;&amp;FF2
2007/09/04 Javascript
动态添加js事件实现代码
2009/03/12 Javascript
jQuery 渐变下拉菜单
2009/12/15 Javascript
PHP abstract与interface之间的区别
2013/11/11 Javascript
jQuery中:first-child选择器用法实例
2014/12/31 Javascript
JavaScript的jQuery库中ready方法的学习教程
2015/08/14 Javascript
JavaScript实现解析INI文件内容的方法
2016/11/17 Javascript
Vuex之理解Mutations的用法实例
2017/04/19 Javascript
Angular2学习笔记之数据绑定的示例代码
2018/01/03 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
微信小程序滑动选择器的实现代码
2018/08/10 Javascript
vue2.0+SVG实现音乐播放圆形进度条组件
2019/09/21 Javascript
微信小程序登录时如何获取input框中的内容
2019/12/04 Javascript
python二分法实现实例
2013/11/21 Python
跟老齐学Python之用Python计算
2014/09/12 Python
python实现每次处理一个字符的三种方法
2014/10/09 Python
PyQt5每天必学之日历控件QCalendarWidget
2018/04/19 Python
详解Python 装饰器执行顺序迷思
2018/08/08 Python
浅谈python之新式类
2018/08/12 Python
Python3.7 dataclass使用指南小结
2019/02/22 Python
Pandas之ReIndex重新索引的实现
2019/06/25 Python
关于python字符串方法分类详解
2019/08/20 Python
Win10里python3创建虚拟环境的步骤
2020/01/31 Python
Python下划线5种含义代码实例解析
2020/07/10 Python
如何利用Python写个坦克大战
2020/11/18 Python
煤矿安全演讲稿
2014/05/09 职场文书
产品发布会策划方案
2014/05/12 职场文书
导师就业推荐信范文
2014/05/22 职场文书
医院我们的节日活动实施方案
2014/08/22 职场文书
中学社团活动总结
2015/05/07 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
甜美蛋糕店的创业计划书模板,拿来即用!
2019/08/21 职场文书
详解Nginx启动失败的几种错误处理
2021/04/01 Servers
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS