CSS 属性

CSS translate属性允许你沿着X轴(水平)、Y轴(垂直)和Z轴(深度)移动元素。

translate属性类似于transform 属性的translate() 函数。两者唯一的区别是后者不支持Z轴设置。

属性值

1.单个值:

2.两个值:

3.三个值:

4. none:不应用任何移动。

适用范围

所有可变形元素。

DOM 语法

object.style.translate = "none | <length-percentage> <length>"; 

CSS translate: none

下面是一个将translate设置为none的示例,这将导致不进行移动。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 5px;
        border: 1px solid black;
    }
    #m:hover {
        background-color: orange;
        translate: none;
    }
</style>
</head>
<body>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 X 轴上进行移动

这里是一个移动示例:<length> | <percentage> 值仅针对 X 轴设置,该值沿 X 轴平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 20px 0;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 50% 0;
    }
    #p:hover {
        background-color: royalblue;
        translate: 2rem 0;
    }
    #m:hover {
        background-color: orange;
        translate: -30% 0;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 Y 轴上进行移动

这里是一个移动示例:<length> | <percentage> 值仅针对 Y 轴设置,该值沿 Y 轴平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 0 10px;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 0 50%;
    }
    #p:hover {
        background-color: royalblue;
        translate: 0 -30px;
    }
    #m:hover {
        background-color: orange;
        translate: 0 -30%;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 Z 轴上进行移动

这里是一个移动示例:<length> | <percentage> 值仅针对 Z 轴设置,该值沿 Z 轴平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 0 0 10px;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 0 0 50%;
    }
    #p:hover {
        background-color: royalblue;
        translate: 0 0 -30px;
    }
    #m:hover {
        background-color: orange;
        translate: 0 0 -30%;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 X 和 Y 轴上进行移动

这里是一个移动示例:<length> | <percentage> 值是为 X 和 Y 轴设置的,它沿 X 和 Y 轴平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 10px 30px;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 50% -40%;
    }
    #p:hover {
        background-color: royalblue;
        translate: -30px -20px;
    }
    #m:hover {
        background-color: orange;
        translate: -30% 15px;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 Y 和 Y 上进行平移Z 轴

这是一个移动示例:<length> | <percentage> 值是为 Y 轴和 Z 轴设置的,该值在 Y 轴和 Z 轴上平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 0 10px 30px;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 0 10% 20%;
    }
    #p:hover {
        background-color: royalblue;
        translate: 0 -30px -20px;
    }
    #m:hover {
        background-color: orange;
        translate: 0 -30% 15px;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 X 和 Z 轴上进行移动

这里是一个移动示例:<length> | <percentage> 值是为 X 轴和 Z 轴设置的,它沿 X 轴和 Z 轴平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 10px 0 30px;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 10% 0 20%;
    }
    #p:hover {
        background-color: royalblue;
        translate: -30px 0 -20px;
    }
    #m:hover {
        background-color: orange;
        translate: -30% 0 15px;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html> 

CSS translate: 使用长度百分比在 X、Y 和 Z 轴上进行移动

这里是一个移动示例:<length> | <percentage> 值是为 X、Y 和 Z 轴设置的,它沿所有三个轴平移元素。与伪类 :hover 一起应用。

<html>
<head>
<style>
    div.box {
        height: 50px;
        width: 50px;
        display: inline-block;
        padding: 15px;
        border: 1px solid black;
    }
    #n:hover {
        background-color: lavender;
        translate: 10px 20px 30px;
    }
    #o:hover {
        background-color: palevioletred;
        translate: 10% 30% 20%;
    }
    #p:hover {
        background-color: royalblue;
        translate: -30px 10px -20px;
    }
    #m:hover {
        background-color: orange;
        translate: -30% 10px 30px;
    }
</style>
</head>
<body>
    <div id="n" class="box"></div>
    <div id="o" class="box"></div>
    <div id="p" class="box"></div>
    <div id="m" class="box"></div>
</body>
</html>