web前台入门到实战:使用 css3 transform 属性来变换背景图
使用 css3 transform 属性可以轻易的旋转,倾斜,缩放任何元素。目前即便没有任何前缀也可以在绝大部分浏览器上很好的使用。
#myelement {-webkit-transform: rotate(30deg);transform: rotate(30deg);}这个听起来很赞。然而,这个属性旋转了整个元素,包括他的内容、边框、背景图。假如你只是想旋转它的背景图而不选旋转内容的话,应该怎样做呢?或者者你只想旋转内容,而不旋转背景图,这个又该怎样做呢?
我们找到一个处理方式。这个方式本质上,是将背景图应用到某个元素的 before 或者者 after 这种伪类元素上而不是应用到元素本身。而后在伪类元素独立的使用 transform 属性。
仅仅变换背景
这个元素可以使用任何样式,但肯定要设置 position 属性,由于其伪类元素会基于它来定位。假如不想背景撑到元素外,那就要设置 overflow: hidden。
#myelement {position: relative;overflow: hidden;}现在我们可以创立一个绝对定位的伪类元从来实现变换背景。为了确保他会低于元素内容显示,需要设置 z-index: -1。
#myelement:before {content: "";position: absolute;width: 200%;height: 200%;top: -50%;left: -50%;z-index: -1;background: url(background.png) 0 0 repeat;-webkit-transform: rotate(30deg);transform: rotate(30deg);}学习Q-q-u-n: 731771211,分享学习方法和需要注意的小细节,不停升级最新的教程和学习技巧(从零基础开始到前台项目实战教程,学习工具,全栈开发学习路线以及规划)需要注意的是,在变换的过程中,你需要去调整伪类元素的 width,height,position 属性。例子:如果伪类元素使用了一张可重复的图片做背景,那么旋转区域就必需大于父元素,这样才可以在旋转过程中覆盖整个父元素。

在变换的元素上实现固定背景
所有主元素的变换操作都会影响到伪类元素. 如果伪类元素不想要变换操作时,我们就需要撤销这个变换, 例子:当一个父元素旋转了 30 度,那么伪类元素需要相反方向旋转 30 度,来使伪类元素回退到固定位置。
#myelement {position: relative;overflow: hidden;-webkit-transform: rotate(30deg);transform: rotate(30deg);}#myelement:before {content: "";position: absolute;width: 200%;height: 200%;top: -50%;left: -50%;z-index: -1;background: url(background.png) 0 0 repeat;-webkit-transform: rotate(-30deg);transform: rotate(-30deg);}再次强调,你需要对伪类元素的宽高及定位属性进行调整来确保它可以完全覆盖主元素。
说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » web前台入门到实战:使用 css3 transform 属性来变换背景图
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » web前台入门到实战:使用 css3 transform 属性来变换背景图