您现在的位置是:网站首页> 编程资料编程资料
CSS 实现平行四边形的示例代码CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
2021-09-04
958人已围观
简介 这篇文章主要介绍了CSS 实现平行四边形的示例代码的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
本文介绍了CSS 实现平行四边形的示例代码,分享给大家,具体如下:
先上效果图

平行四边形可以用做导航栏部分。
原理:利用transform属性拉伸矩形。
CSS代码
transform: skewX(-45deg);
上面的代码表示:沿X轴倾斜 -45 度。
但如果只用上面的代码作用在元素上,会导致其内容也发生倾斜变形,会影响阅读。

解决方法1:嵌套元素
用嵌套元素的方法,对内容再应用一次反向的 skew() 变形,从而抵消容器对内容产生的变形效果。
HTML代码
CSS代码
a { width: 100px; height: 40px; display: flex; justify-content: center; align-items: center; background: #58a; text-decoration: none; color: #fff; transform: skewX(-45deg); } div { transform: skewX(45deg); } 效果如图所示

这种方法在表现上很不错,不过在逻辑上比较直接粗暴。
我们理解的HTML,更应该作用在框架的搭建上,而不是样式的表现上。如果结构层的更变是不允许的,或者希望严格保持结构层的纯净度,这种方法不是好方法。
注意:像上面的例子中,如果想把布局的样式用在a(内联元素)里,记得把它的display设成inline-block或block等值,否则变形不会生效。
这里我设置成flex,为了方便把内容居中。
解决方法二:伪元素
把所有样式应用到伪元素上,然后再对伪元素进行变形。
内容层(文字部分)只做颜色、字号等设置。
HTML代码
CSS代码
a::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; background: #58a; transform: skewX(-45deg); } a { width: 100px; height: 40px; position: relative; display: flex; justify-content: center; align-items: center; color: #fff; text-decoration: none; } 
也能得到同样的效果。这种方法不会污染HTML结构层。
这种方法为伪元素保持了良好的灵活性,可以自动继承其宿主元素的尺寸。
首先给宿主元素应用 position: relative 样式,并为伪元素设置 position: absolute,然后再把所有偏移量设置为0,以便让它在水平和垂直方向上都被拉伸至宿主元素的尺寸(top: 0; right: 0; bottom: 0; left: 0;)。
此时,用伪元素生成的方块是重叠在内容之上的,一旦给它设置背景,就会遮住内容。所以要为伪元素设置 z-index: -1 。这样它的堆叠层次就会被推到宿主元素之后。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关内容
- 详解css如何利用 :before :after 写小三角形
- css之分页打印的示例代码CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- 清除css浮动的三种方法小结详解css清除浮动float的七种常用方法总结和兼容性处理浅谈css中浮动和清除浮动带来的影响CSS清除浮动方法小结详解CSS中zoom属性或overflow:auto属性清除浮动的作用关于清除浮动塌陷的几种方法总结浅谈CSS中的clear清除浮动CSS清除浮动的方法详解CSS浮动所差生的内容溢出问题及清除浮动的方法小结DIV+CSS 清除浮动常用方法总结Css实现清除浮动的方法汇总
- 使用纯CSS实现书籍3D翻页效果的示例css transform 翻页动画记录的实现HTML5 3D书本翻页动画的实现示例很酷的HTML5电子书翻页动画特效一个不错的html 打印代码支持翻页css实现点击滚动翻页的效果(无js)css3实现书本翻页效果的示例代码
- 使用css3做0.5px的细线的示例代码css中引入svg来兼容部分安卓机显示0.5px边框的示例css实现各种0.5px的线(小结)
- 使用CSS样式写选择框右侧小三角 CSS 样式书写规范(推荐)在线css sprite/css精灵/雪碧图css样式生成工具CSS使用classList实现两个按钮样式的切换css判断某元素的子元素个数并分别设置样式的方法jQuery ui+css3制作圆形音乐播放器样式特效源码css样式改变及实际用法详解
- CSS 埋点统计的示例代码CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- css判断某元素的子元素个数并分别设置样式的方法CSS :befor :after 伪元素的巧妙用法详解CSS nth-child与nth-of-type的元素查找方式CSS 实现元素较宽不能被完全展示时将其隐藏的方法css3实现多个元素依次显示效果单元素利用css实现多重边框效果示例代码css3之UI元素状态伪类选择器实例演示利用CSS3伪元素实现逐渐发光的方格边框css 获取从第n个开始之后的所有元素
- CSS属性之定位属性(图文详解)
- CSS Gird布局教程指南CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
