Изменение точки, от которой отмеряются преобразования объекта.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Transform origin</title>
<style>
body {
font: 15px/1.5 helvetica, arial, sans-serif;
background: #333;
color: #ccc;
margin: 50px 0 50px 50px;
}
a, code { color: white }
p { margin-bottom: 50px }
pre, #htmldog {
float: left;
height: 300px;
width: 300px;
background-color: #666;
margin: 0 50px 50px 0;
white-space: normal;
position: relative;
}
pre code {
display: block;
height: 260px;
background: rgba(255,204,000,.7);
padding: 20px;
}
pre:after {
content: "";
position: absolute;
width: 10px;
height: 10px;
background: red;
border: 5px solid white;
border-radius: 10px;
margin: -10px 0 0 -10px;
}
#p0 code {
-webkit-transform: rotate(10deg); /* for some older browsers */
-webkit-transform-origin: 50% 50%;
-ms-transform: rotate(10deg); /* for IE9 */
-ms-transform-origin: 50% 50%;
transform: rotate(10deg);
transform-origin: 50% 50%; /* default */
}
#p0:after {
top: 50%;
left: 50%;
}
#p1 code {
-webkit-transform: rotate(10deg);
-webkit-transform-origin: top;
-ms-transform: rotate(10deg);
-ms-transform-origin: top;
transform: rotate(10deg);
transform-origin: top;
}
#p1:after {
top: 0;
left: 50%;
}
#p2 code {
-webkit-transform: rotate(10deg);
-webkit-transform-origin: right;
-ms-transform: rotate(10deg);
-ms-transform-origin: right;
transform: rotate(10deg);
transform-origin: right;
}
#p2:after {
top: 50%;
right: 0;
margin: -10px -10px 0 0;
}
#p3 code {
-webkit-transform: rotate(10deg);
-webkit-transform-origin: right top;
-ms-transform: rotate(10deg);
-ms-transform-origin: right top;
transform: rotate(10deg);
transform-origin: right top;
}
#p3:after {
top: 0;
right: 0;
margin: -10px -10px 0 0;
}
#p4 code {
-webkit-transform: rotate(10deg);
-webkit-transform-origin: 25% 25%;
-ms-transform: rotate(10deg);
-ms-transform-origin: 25% 25%;
transform: rotate(10deg);
transform-origin: 25% 25%;
}
#p4:after {
top: 25%;
left: 25%;
}
#p5 code {
-webkit-transform: rotate(10deg);
-webkit-transform-origin: -20px 20px;
-ms-transform: rotate(10deg);
-ms-transform-origin: -20px 20px;
transform: rotate(10deg);
transform-origin: -20px 20px;
}
#p5:after {
top: 20px;
left: -20px;
}
#htmldog a {
display: block;
padding: 105px 90px;
background: rgba(255,204,000,.7);
-webkit-transform: rotate(10deg);
-webkit-transform-origin: 0 0;
-ms-transform: rotate(10deg);
-ms-transform-origin: 0 0;
transform: rotate(10deg);
transform-origin: 0 0;
transition: 1s;
}
#htmldog a:hover {
-webkit-transform: rotate(-10deg);
-webkit-transform-origin: right top;
-ms-transform: rotate(-10deg);
-ms-transform-origin: right top;
transform: rotate(-10deg);
transform-origin: right top;
}
</style>
</head>
<body>
<h1><a href="https://foxyforex.ru/css/preobrazovaniya">CSS преобразования</a></h1>
<p>Используя <a href="https://foxyforex.ru/css/svojstvo-css-transform-origin"><code>transform-origin</code></a> свойство CSS для изменения точки, от которой измеряются преобразования. В качестве примера - повёрнутое 2D-преобразование.</p>
<pre id="p0"><code id="c0">transform: rotate(10deg);
transform-origin: 50% 50%;
/* default */</code></pre>
<pre id="p1"><code id="c1">transform: rotate(10deg);
transform-origin: top;</code></pre>
<pre id="p2"><code id="c2">transform: rotate(10deg);
transform-origin: right;</code></pre>
<pre id="p3"><code id="c3">transform: rotate(10deg);
transform-origin: right top;</code></pre>
<pre id="p4"><code id="c4">transform: rotate(10deg);
transform-origin: 25% 25%;</code></pre>
<pre id="p5"><code id="c5">transform: rotate(10deg);
transform-origin: -20px 20px;</code></pre>
</body>
</html>Страницы в тему:
- 2D преобразования
- Преобразования (Внушительный урок CSS)