diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
commit | 074785cea106179cb3305637055ab0a009ca74f2 (patch) | |
tree | e6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/ru/web/css/perspective | |
parent | da78a9e329e272dedb2400b79a3bdeebff387d47 (diff) | |
download | translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2 translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip |
initial commit
Diffstat (limited to 'files/ru/web/css/perspective')
-rw-r--r-- | files/ru/web/css/perspective/index.html | 284 |
1 files changed, 284 insertions, 0 deletions
diff --git a/files/ru/web/css/perspective/index.html b/files/ru/web/css/perspective/index.html new file mode 100644 index 0000000000..f0cd21e705 --- /dev/null +++ b/files/ru/web/css/perspective/index.html @@ -0,0 +1,284 @@ +--- +title: perspective +slug: Web/CSS/perspective +translation_of: Web/CSS/perspective +--- +<div>{{CSSRef}}{{SeeCompatTable}}</div> + +<h2 id="Описание">Описание</h2> + +<p>Свойство <a href="/en/CSS" title="CSS">CSS</a> <strong><code>perspective </code></strong><code>определяет расcтояние между плоскостью z = 0 и пользователем для того чтобы придать 3D-позиционируемому элементу эффект переспективы. Каждый трансформируемый элемент с z > 0 станет больше, с z < 0 соответственно меньше.</code></p> + +<p>Элементы части которые находятся за пользователем, т.е. z-координата этих элементов больше чем значение свойства <code>perspective, не отрисовываются.</code></p> + +<p><em><code>Точка схождения </code></em><code>по-умолчанию расположена в центре элемента, но её можно переместить используя свойство </code>{{ cssxref("perspective-origin") }}.</p> + +<p>При использовании данного свойства со значениями отличными от 0 или none создается новый <a href="/en/CSS/Understanding_z-index/The_stacking_context" title="en/CSS/Understanding_z-index/The_stacking_context">stacking context</a>.</p> + +<p>{{cssinfo}}</p> + +<h2 id="Syntax" name="Syntax">Синтаксис</h2> + +<pre class="brush: css">/* Keyword value */ +perspective: none; + +/* Значения <length> */ +perspective: 20px; +perspective: 3.5em; + +/* Глобальные значения */ +perspective: inherit; +perspective: initial; +perspective: unset; +</pre> + +<h3 id="Значения">Значения</h3> + +<dl> + <dt><code>none</code></dt> + <dd><font face="Consolas, Liberation Mono, Courier, monospace">Указывает что трасформация перспективы к элементу применяться не будет.</font></dd> + <dt><code><length></code></dt> + <dd>{{cssxref("<length>")}} у<code>станавливает растояние от пользователя до плоскости z = 0. Применяет трасформацию к элементу и его содержимому. Если значение отрицательно или равно 0, то преобразование не применяется.</code></dd> +</dl> + +<h3 id="Формальный_синтаксис">Формальный синтаксис</h3> + +<pre class="syntaxbox">{{csssyntax}}</pre> + +<h2 id="Examples" name="Examples">Примеры</h2> + +<h3 id="Three_cubes" name="Three_cubes">Три куба</h3> + +<h4 id="HTML_Content">HTML Content</h4> + +<pre class="brush: html"><table> + <tbody> + <tr> + <th><code>perspective: 250px;</code> + </th> + <th><code>perspective: 350px;</code> + </th> + <th><code>perspective: 500px;</code> + </th> + </tr> + <tr> + <td> + <div class="container"> + <div class="cube pers250"> + <div class="face front">1</div> + <div class="face back">2</div> + <div class="face right">3</div> + <div class="face left">4</div> + <div class="face top">5</div> + <div class="face bottom">6</div> + </div> + </div> + </td> + <td> + <div class="container"> + <div class="cube pers350"> + <div class="face front">1</div> + <div class="face back">2</div> + <div class="face right">3</div> + <div class="face left">4</div> + <div class="face top">5</div> + <div class="face bottom">6</div> + </div> + </div> + </td> + <td> + <div class="container"> + <div class="cube pers500"> + <div class="face front">1</div> + <div class="face back">2</div> + <div class="face right">3</div> + <div class="face left">4</div> + <div class="face top">5</div> + <div class="face bottom">6</div> + </div> + </div> + </td> + </tr> + </tbody> +</table></pre> + +<h4 id="CSS_Content">CSS Content</h4> + +<pre class="brush: css">/* Короткие классы для различных значений perspective */ +.pers250 { + perspective: 250px; + -webkit-perspective: 250px; +} +.pers350 { + perspective: 350px; + -webkit-perspective: 350px; +} +.pers500 { + perspective: 500px; + -webkit-perspective: 500px; +} + +/* Определяем div.container, div.cube, и свойства граней куба */ + .container { + width: 200px; + height: 200px; + margin: 75px 0 0 75px; + border: none; +} +.cube { + width: 100%; + height: 100%; + backface-visibility: visible; + perspective-origin: 150% 150%; + transform-style: preserve-3d; + -webkit-backface-visibility: visible; + -webkit-perspective-origin: 150% 150%; + -webkit-transform-style: preserve-3d; +} +.face { + display: block; + position: absolute; + width: 100px; + height: 100px; + border: none; + line-height: 100px; + font-family: sans-serif; + font-size: 60px; + color: white; + text-align: center; +} + +/* Определяем каждую грань в зависимости от направления */ + .front { + background: rgba(0, 0, 0, 0.3); + transform: translateZ(50px); + -webkit-transform: translateZ(50px); +} +.back { + background: rgba(0, 255, 0, 1); + color: black; + transform: rotateY(180deg) translateZ(50px); + -webkit-transform: rotateY(180deg) translateZ(50px); +} +.right { + background: rgba(196, 0, 0, 0.7); + transform: rotateY(90deg) translateZ(50px); + -webkit-transform: rotateY(90deg) translateZ(50px); +} +.left { + background: rgba(0, 0, 196, 0.7); + transform: rotateY(-90deg) translateZ(50px); + -webkit-transform: rotateY(-90deg) translateZ(50px); +} +.top { + background: rgba(196, 196, 0, 0.7); + transform: rotateX(90deg) translateZ(50px); + -webkit-transform: rotateX(90deg) translateZ(50px) +} +.bottom { + background: rgba(196, 0, 196, 0.7); + transform: rotateX(-90deg) translateZ(50px); + -webkit-transform: rotateX(-90deg) translateZ(50px); +} + +/* Делаем таблицу немного лучше */ +th, p, td { + background-color: #EEEEEE; + padding: 10px; + font-family: sans-serif; + text-align: left; +}</pre> + +<h4 id="Результат">Результат</h4> + +<p>{{ EmbedLiveSample('Three_cubes', 940, 460) }}</p> + +<h2 id="Specifications" name="Specifications">Спецификации</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Статус</th> + <th scope="col">Коментарий</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{ Specname('CSS3 Transforms', '#perspective', 'perspective') }}</td> + <td>{{ Spec2('CSS3 Transforms') }}</td> + <td>Первоначальное определение</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2> + +<p>{{ CompatibilityTable() }}</p> + +<div id="compat-desktop"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Chrome</th> + <th>Edge</th> + <th>Firefox (Gecko)</th> + <th>Internet Explorer</th> + <th>Opera</th> + <th>Safari (WebKit)</th> + </tr> + <tr> + <td>Базовая поддержка</td> + <td> + <p>12{{ property_prefix('-webkit') }}{{ CompatGeckoDesktop("10") }}<br> + 45</p> + </td> + <td>{{CompatVersionUnknown}}{{property_prefix("-webkit")}}<br> + {{CompatVersionUnknown}}</td> + <td> + <p>{{ CompatGeckoDesktop("10") }}{{ property_prefix('-moz') }}<br> + {{ CompatGeckoDesktop("16") }}<sup>[1]</sup></p> + </td> + <td>10</td> + <td>15{{ property_prefix('-webkit') }}</td> + <td>{{ CompatVersionUnknown() }}{{ property_prefix('-webkit') }}</td> + </tr> + </tbody> +</table> +</div> + +<div id="compat-mobile"> +<table class="compat-table"> + <tbody> + <tr> + <th>Feature</th> + <th>Android</th> + <th>Edge</th> + <th>Firefox Mobile (Gecko)</th> + <th>IE Phone</th> + <th>Opera Mobile</th> + <th>Safari Mobile</th> + </tr> + <tr> + <td>Базовая поддержка</td> + <td>3.0{{ property_prefix('-webkit') }}</td> + <td>{{CompatVersionUnknown}}{{property_prefix("-webkit")}}<br> + {{CompatVersionUnknown}}</td> + <td>{{ CompatGeckoMobile("10") }}{{ property_prefix('-moz') }}<br> + {{ CompatGeckoMobile("16") }}<sup>[1]</sup></td> + <td>8.1</td> + <td>{{ CompatVersionUnknown() }}{{ property_prefix('-webkit') }}</td> + <td>{{ CompatVersionUnknown() }}{{ property_prefix('-webkit') }}</td> + </tr> + </tbody> +</table> +</div> + +<p>[1] In addition to the unprefixed support, Gecko 45.0 {{geckoRelease("45.0")}} added support for a <code>-webkit</code> prefixed version of the property for web compatibility reasons behind the preference <code>layout.css.prefixes.webkit</code>, defaulting to <code>false</code>. Since Gecko 49.0 {{geckoRelease("49.0")}} the preference defaults to <code>true</code>.</p> + +<h2 id="See_also" name="See_also">Смотрите также</h2> + +<ul> + <li><a href="/en-US/docs/CSS/Using_CSS_transforms" title="/en-US/docs/CSS/Using_CSS_transforms">Using CSS Transforms</a></li> +</ul> |