3D相册,拖拽旋转

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>css3+3D相册</title>
<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
<style>
* {
    margin:0;
    padding:0;
    font-size:0;
}
html,body {
    width:100%;
    height:100%;
    display:flex;
    display:-webkit-flex;
    background:-webkit-radial-gradient(#490338 10%,#000);
    perspective:900px;
    overflow:hidden;
}
#album {
    width:133px;
    height:200px;
    margin:auto;
    position:relative;
    transform-style:preserve-3d;
    transform:rotateX(-20deg);
}
#album img {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    /* 反射倒影 距离下面5px  */

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
实现3D球状拖动旋转效果可以使用Three.js库来创建一个3D场景。下面是一个简单的示例代码,可以将其用作起点: ```javascript // 创建场景 var scene = new THREE.Scene(); // 创建相机 var camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 ); camera.position.z = 5; // 创建渲染器 var renderer = new THREE.WebGLRenderer(); renderer.setSize( window.innerWidth, window.innerHeight ); document.body.appendChild( renderer.domElement ); // 创建球体 var geometry = new THREE.SphereGeometry( 2, 32, 32 ); var material = new THREE.MeshBasicMaterial( { color: 0xffffff } ); var sphere = new THREE.Mesh( geometry, material ); scene.add( sphere ); // 添加鼠标拖动控制 var controls = new THREE.OrbitControls( camera, renderer.domElement ); controls.enableDamping = true; controls.dampingFactor = 0.25; controls.enableZoom = false; // 渲染场景 function render() { requestAnimationFrame( render ); renderer.render( scene, camera ); } render(); ``` 上述代码创建了一个简单的场景,其中包含一个白色的球体,并使用OrbitControls库添加了鼠标拖动控制。你可以通过拖动鼠标左键或右键来旋转球体。 如果你想要在球体上添加纹理或其他材质,可以创建一个THREE.TextureLoader对象,加载一个纹理图像,并将其传递给MeshBasicMaterial。例如: ```javascript var texture = new THREE.TextureLoader().load( 'texture.jpg' ); var material = new THREE.MeshBasicMaterial( { map: texture } ); ``` 你可以自己尝试更改代码来实现你想要的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值