前面的话

  变形transform本来是一个用来处理移动、旋转、缩放和倾斜等基本操作的CSS3属性,但该属性除了完成其本职工作之后,还对普通元素造成了意想不到的影响,本文将详细介绍transform对元素造成的四个副作用

z-index

  在定位中的堆叠z-index中曾经提到过,CSS3的出现对过去的很多规则发出了挑战,对层叠上下文z-index的影响更加显著,其中就包括元素的变形transform不是none的情况

  元素的变形transform不是none使该元素可以使用堆叠z-index,从而可以覆盖普通流元素和低级别的定位元素

  在下面例子中,show2和show1都是普通元素,show2通过设置margin负值,覆盖了show1。但是,通过改变show1的'transform'属性可以改变其层叠效果

fixed

  固定定位fixed使元素相对于视窗进行定位,不随着页面滚动条的滚动而滚动。但是,如果在固定定位元素的父级设置transform不为none,则会将固定定位降级为绝对定位absolute

  兼容性:IE浏览器无此表现,依然保持fixed状态

  [注意]在chrome浏览器下,将固定定位元素父级的transform属性设置为none,可能会使元素从静态位置移动到left:0、top:0的位置。如果某个父级元素设置为宽度100%,则fixed将保持在原来位置不会改变

overflow

  对于溢出overflow失效的情况发生在overflow在绝对定位元素及其包含块之间,如下所示

  给设置overflow的元素使用transform或在设置overflow的元素与溢出元素之间的元素设置transform,可以解决overflow失效的问题

  兼容性:在chrome和safari浏览器下,只有设置overflow的元素与溢出元素之间的元素设置transform时,才有效;而IE9+和firefox浏览器,对于以上两种设置都有效

  [注意]在chrome浏览器下,将元素的transform属性设置为none,可能会使元素从静态位置移动到left:0、top:0的位置

定位父级

  一般地,绝对定位元素设置宽度百分比时,参照的是定位父级。定位父级是第一个position值为非static值的祖先元素。但是,如果祖先元素中存在设置了transform元素不为none的元素,也可以成为定位父级

  以下为例子中的HTML结构,当.transform元素设置transform:scale(1)时,该元素成为定位父级,否则.parent元素是定位父级

<div class="parent" style="position:relative;width: 200px;height: 30px;">
<div class="transform" style="width: 80px;height: 80px;">
<div class="test" style="position:absolute;width:100%"></div>
</div>
</div>

变形transform的副作用的更多相关文章

  1. transform 的副作用

    transform是一些效果的集合,主要是移动.旋转.缩放和倾斜这四种基本操作,还可以通过设置matrix矩阵来实现更复杂的效果. 变形transform可以实现2D和3D两种效果. 变形transf ...

  2. CSS3与页面布局学习笔记(六)——CSS3新特性(阴影、动画、渐变、变形( transform)、透明、伪元素等)

    一.阴影 1.1.文字阴影 text-shadow<length>①: 第1个长度值用来设置对象的阴影水平偏移值.可以为负值 <length>②: 第2个长度值用来设置对象的阴 ...

  3. 深入理解CSS变形transform(2d)

    × 目录 [1]变形原点 [2]变形函数 [3]多值 前面的话 CSS变形transform是一些效果的集合,主要是移动.旋转.缩放和倾斜这四种基本操作,还可以通过设置matrix矩阵来实现更复杂的效 ...

  4. CSS3的变形transform、过渡transition、动画animation学习

    学习CSS3动画animation得先了解一些关于变形transform.过渡transition的知识 这些新属性大多在新版浏览器得到了支持,有些需要添加浏览器前缀(-webkit-.-moz-.- ...

  5. CSS变形transform(2d)

    前面的话 CSS变形transform是一些效果的集合,主要是移动.旋转.缩放和倾斜这四种基本操作,还可以通过设置matrix矩阵来实现更复杂的效果.变形transform可以实现2D和3D两种效果. ...

  6. Westciv Tools主要为CSS3提供了渐变gradients、盒子阴影box-shadow、变形transform和文字描边四种在线生成效果的工具

    Westciv Tools主要为CSS3提供了渐变gradients.盒子阴影box-shadow.变形transform和文字描边四种在线生成效果的工具 1.Westciv Tools 彩蛋爆料直击 ...

  7. CSS3(3)---2D变形(transform)

    CSS3(3)---2D变形(transform) 2D变形是CSS3中具有颠覆性的特征之一,它常用的属性有:移动(translate).缩放(scale).旋转(rotate).倾斜 (skew). ...

  8. css变形 transform【转】

    transition:过度属性 transition-property 规定设置过度效果的css属性的名称,默认可以写all transition-duration 规定完成过度效果需要多少秒或毫秒 ...

  9. 深入理解CSS变形transform(3d)

    × 目录 [1]坐标轴 [2]透视 [3]变形函数 [4]透视函数 [5]变形原点 [6]背景可见 [7]变形风格 前面的话 本文将详细介绍关于transform变形3D的内容,但需以了解transf ...

随机推荐

  1. ecos的model

    表->dbschema->model 虚拟化model机制 在dbschema存在model不存在的情况下 很多mvc结构都这么来 model命名规则 {$app_name}_mdl_{$ ...

  2. mytop

    http://jeremy.zawodny.com/mysql/mytop/mytop.html 内容有点过时,用?查看帮助 vi set nuset nonu总记不住

  3. PHP 代码跟踪

    怎么知道代码的执行过程呢,也就是说怎么知道:是先执行哪些代码,然后执行哪些代码呢? 这里有一个非常犀利的函数,可以让你知道代码的执行过程 debug_backtrace()  函数. 来一段代码: L ...

  4. bzoj1061 志愿者招募

    bzoj1061 志愿者招募 Description 申奥成功后,布布经过不懈努力,终于成为奥组委下属公司人力资源部门的主管.布布刚上任就遇到了一个难 题:为即将启动的奥运新项目招募一批短期志愿者.经 ...

  5. spring mvc获取路径参数的几种方式 - 浅夏的个人空间 - 开源中国社区

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  6. Java 内存回收机制 -说到点上了

    下面这个图,很清楚地说明对象在new的时候是怎样开辟内存空间的 其中对象new出来的,是栈内存,变量的开辟是堆内存 Java的一个重要优点就是通过垃圾收集器GC (Garbage Collection ...

  7. 比较实用的webpack配置代码

    var path = require('path');var webpack = require('webpack');var ExtractTextPlugin = require('extract ...

  8. Laravel5 model create使用

    1.在laravel的Eloquent ORM中,默认表会有created_at.updated_at两个字段,因此在使用create函数时若表无这两个字段会出错,可以设置 public $times ...

  9. iOS开发之指纹解锁

    http://blog.csdn.net/hongfengkt/article/details/49868073 前一阵子一直在赶项目进度,没有太多时间写博客,现在终于空闲了,将以前欠下的博客补上来. ...

  10. pho

    PDO(PHP Data Object) 是PHP 5新出来的东西,在PHP 6都要出来的时候,PHP 6只默认使用PDO来处理数据库,将把所有的数据库扩展移到了PECL,那么默认就是没有了我们喜爱的 ...