怎么用用css的方法做出上下门移动的效果

怎么用用css的方法做出上下门移动的效果,第1张

要在CSS中实现上下门的移动效果,你可以使用CSS的transform属性来设置门的位移效果。

以下是一个简单的例子,假设你有一个类名为door的HTML元素,希望实现上下移动效果:

Copy codedoor { transform: translateY(-100px); transition: transform 1s;

}dooropen { transform: translateY(0);

}

在上面的CSS代码中,我们使用了transform属性的translateY方法来实现垂直移动,并使用了transition属性来设置动画过渡效果。我们还定义了一个类名为open的状态,在这个状态下,门的位置会发生改变,从而实现上下移动的效果。

要在HTML代码中触发这个状态,你可以使用JavaScript来添加或删除open类名:

Copy codedocumentquerySelector('door')classListadd('open');documentquerySelector('door')classListremove('open');

希望这些信息能帮助你实现所需的上下门移动效果。

运行条件

HBuilder X 37

安装后,从插件市场导入,即可真机运行

vue

项目地址

[github]( >

场景中的三要素

camera 相机

spotLight 光源

object (plane、cube)物体

一个只有一个平面的简单场景中已经包含了几个对象

其中包括使用 Sceneadd(object) 加载进场景的几个对象

场景渲染的时候camera对象会自动添加进来

从几个函数来理解THREEScene()对象

1、在场景中添加物体 SceneAdd()

2、移除物体 SceneRemove()

3、获取场景中所有子对象列表 Scenechildren

4、利用name 属性,获取场景中某个特定的物体 ScenegetChildByName()

5、这是一个回调函数返回所有子对象列表 scenetraverse()

在这里的效果同使用for 循环遍历children这个属性

6、雾化属性 在添加完场景后即可添加,可以使整个场景有一种雾化的效果

scenefog = new THREEFog(0xffffff,0015,100);

7、使场景中的所有物体都使用相同的材质

sceneoverrideMaterial = new THREEMeshLambertMaterial({color:0xffffff});

var geom = new THREEGeometry()

geomvertices = vertices vertices数组定义了构成几何体的点;

geomfaces = faces 将vertices里面的点连接起来,创建成三角面片,就形成了faces数组;

geomverticesNeedUpdate = true 告诉geom对象 上面的属性需要更新;

geomcomputeCentroids() 计算geom中face数组里每一个面的重心;

geomcomputeFaceNormals() 该函数用来重新计算侧面,从而完成整个模型的更新

geommergeVertices() 从字面上的意思可以理解为将几何体的面融成一个立体;

geomclone() 创建出一个geom对象的副本,赋予不同的材质后,就可以使用这个副本创建不同的网格对象。

meshposition

meshrotation

meshscale

meshtranslateX

meshtranslateY

meshtranslateZ

cubepositionset(10,3,1)

cubeposition = new THREEVector3(10,3,1)

1、在controls 中添加方法变量

属性变量是这样的: thispositionX = 1;

方法变量:

2、把对象传递给gui (无取值范围)

guiadd(controls,'translate')

这样在gui中点击的时候就可以调用 translate 方法

var mesh = THREESceneUtilscreateMultiMaterialObject(geom,materials)//其中materials是设置材料的对象数组

这个方法创建出来的不是一个THREEMesh实例,而是materials数组里面的每一个材质都会创建一个实例 所以要像使用Scene对象一样使用这个(THREEMesh)

一、首先学习的是transition属性(zoom不支持transition,适用于具体数值的属性值变化或者背景图的变换)

transition 过渡 作为一个复合属性

1transition-property 指定可以过渡的属性

默认值是all 定义应用过渡效果的 CSS 属性名称列表,列表以逗号分隔。

2transition-duration 指过渡完成的时间

默认值为0s

3transition-timing-function 过渡的动画类型

默认值为ease

ease 规定慢速开始,然后变快,之后慢速结束的过渡效果

ease-in 规定以慢速开始的过渡效果

ease-out 规定以慢速结束的过渡效果

ease-in-out 规定以慢速开始和结束的过渡效果

linear 规定以相同速度开始至结束的过渡效果

cubic bezier(n,n,n,n) 在cubic-bezier函数中定义自己的值

4transition-delay 延迟执行过渡的时间

默认值为0s

二、transform属性

transform 向元素应用2D或3D转换 只对block级元素生效

1translate 位移

translateX() 在x轴上发生位移或者变形

translateY() 在y轴上发生位移或者变形

translate(x,y) 在x轴 ,y轴上发生位移或者变形 当只有一个值的时候,只有x轴生效

2scale 缩放

scaleX() 设置在x轴上发生缩放

scaleY() 设置在y轴上发生缩放

scale(x,y) 设置在x轴,y轴上发生缩放 当只有一个值的时候,x,y轴都发生缩放可以设置负数 使用场景:设置小于12px的字体

3rotate 旋转 2d旋转 设置元素在2d平面旋转(z轴),正数按顺时针,负数按逆时针

rotateX()设置沿x轴旋转

rotateY () 设置沿y轴旋转

4skew 倾斜

skewX 绕x轴发生倾斜

skewY 绕y轴发生倾斜

skew(x,y) 绕x,y轴发生的倾斜 x轴和y轴和我们理解的相反,常用于平行四边形图案

三、transform-origin: 设置旋转元素的基点位置

transform-origin是变形原点,也就是该元素围绕着那个点变形或旋转,该属性只有在设置了transform属性的时候起作用;

因为我们元素默认基点就是其中心位置,换句话说我们没有使用transform-origin改变元素基点位置的情况下,transform进行的rotate,translate,scale,skew,matrix等 *** 作都是以元素自己中心位置进行变化的。

但有时候我们需要在不同的位置对元素进行这些 *** 作,那么我们就可以使用transform-origin来对元素进行基点位置改变,使元素基点不在是中心位置,以达到你需要的基点位置。

下面我们主要来看看其使用规则:

transform-origin(X,Y):用来设置元素的运动的基点(参照点)。默认点是元素的中心点。其中X和Y的值可以是百分值,em,px,其中X也可以是字符参数值left,center,right;Y和X一样除了百分值外还可以设置字符值top,center,bottom 。

语法:-moz-transform-origin: [ | | left | center | right ][ | | top | center | bottom ]

transform-origin接受两个参数,它们可以是百分比,em,px等具体的值,也可以是left,center,right,或者 top,center,bottom等描述性参数 ;

top left | left top 等价于 0 0;

top | top center | center top 等价于 50% 0

right top | top right 等价于 100% 0

left | left center | center left 等价于 0 50%

center | center center 等价于 50% 50%(默认值)

right | right center | center right 等价于 100% 50%

bottom left | left bottom 等价于 0 100%

bottom | bottom center | center bottom 等价于 50% 100%

bottom right | right bottom 等价于 100% 100%

当你在IE浏览器中看到动画飞出屏幕外时,这通常是由于浏览器的缓存不足或者浏览器的设置有问题导致的。因此,要解决这个问题,您需要清理浏览器的缓存,重新设置浏览器的设置,以及检查浏览器是否有更新。您还可以尝试使用其他浏览器,比如Chrome或Firefox,来解决这个问题。如果以上方法都不能解决您的问题,您可以尝试重新安装IE浏览器,或者联系相关技术支持人员来帮助您解决问题。

以上就是关于怎么用用css的方法做出上下门移动的效果全部的内容,包括:怎么用用css的方法做出上下门移动的效果、仿探探左右滑动效果(兼容安卓,ios,小程序,h5)、THREE.JS 2.0 场景及场景中的对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9867898.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存