diff options
Diffstat (limited to 'files/uk/web/houdini/index.html')
-rw-r--r-- | files/uk/web/houdini/index.html | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/files/uk/web/houdini/index.html b/files/uk/web/houdini/index.html new file mode 100644 index 0000000000..92be6ef3cc --- /dev/null +++ b/files/uk/web/houdini/index.html @@ -0,0 +1,87 @@ +--- +title: CSS Гудіні +slug: Web/Гудіні +translation_of: Web/Houdini +--- +<p>Гудіні - це набір низькорівневих API, які надають доступ до СSS движка, даючи розробникам змогу розширити СSS підключаючись до процесу створення макету та застосування стилів в процесі роботи браузерного движка. Гудіні - набір API, які дають розробникам прямий доступ <a href="https://wiki.developer.mozilla.org/en-US/docs/Web/API/CSS_Object_Model">CSS Object Model</a> (CSSOM), дозволяючи розробникам писати код який браузер може розібрати як CSS, таким чином створюючи нові СSS властивості не чекаючи щоб вони були реалізовані в браузерах.</p> + +<h2 id="Переваги_Гудіні">Переваги Гудіні</h2> + +<p>Гудіні дозволяє швидше змінювати стилі ніж при використанні JavaScript .style. Браузер розбирає CSSOM, включаючи макет, процеси відмальовування і компонування, перед застосування будьяких змін знайдених в скрипті. Крім того всі ці процеси повторюються для застосування змін з JavaScript. Гудіні не очікує на завершення першого циклу рендерингу, він включений в цей цикл, створюючи відмальовані зрозумілі стилі. Гудіні надає Гудіні дозволяє швидше змінювати стилі ніж при використанні JavaScript .style. Браузер розбирає CSSOM, включаючи макет, процеси відмальовування і компонування, перед застосування будьяких змін знайдених в скрипті. Крім того всі ці процеси повторюються для застосування змін з JavaScript. Гудіні не очікує на завершення першого циклу рендерингу, він включений в цей цикл, створюючи відмальовані зрозумілі стилі. Гудіні надає об'єктно-орієнтований API для роботи з CSS значеннями в JavaScript.</p> + +<p>Гудіні CSS Типізована OM є a CSS Об'єктвною моделю з типами і методами, показуючи значення як JavaScript об'єкт, це робить Гудіні бульш інтуїтивним ніж <code><a href="/en-US/docs/Web/API/HTMLElement/style">HTMLElement.style</a></code> маніпуляції. Кожний елемент і таблиця стилів мають карту стилів, до якої можна доступитись через його значення <code><a href="/en-US/docs/Web/API/StylePropertyMap">StylePropertyMap</a></code>.</p> + +<p>Особливістю СSS Гудіні є <a href="/en-US/docs/Web/API/Worklet">Worklet</a>. З ворклетами, ви можете створювати модульний CSS, це потребує однієї лінійки JavaScript для імпорту налаштовуваних компоненів: без пре-процесорів, пост-процесорів або JavaScript фреймворків.</p> + +<pre class="brush: js"><script> + CSS.paintWorklet.addModule('csscomponent.js'); +</script> +</pre> + +<p>Цей доданий модуль містить <code><a href="/en-US/docs/Web/API/PaintWorklet/registerPaint">registerPaint()</a></code> фунцкію, яка реєструє повністю налаштовувані ворклетів.</p> + +<p> Функція CSS <code>paint()</code> включає в себе ім'я ворклета а також можливі додаткові параметри. Ворклет також має доступ до звичайних значеннь елемента, їх не потрібно передавати як параметри функції.</p> + +<pre class="brush: css line-numbers language-css"><code class="language-css"><span class="selector token">li</span> <span class="punctuation token">{</span> + <span class="property token">background-image</span><span class="punctuation token">:</span> <span class="function token">paint</span><span class="punctuation token">(myComponent</span><span class="punctuation token">,</span> stroke<span class="punctuation token">,</span> <span class="number token">10</span><span class="token unit">px</span><span class="punctuation token">)</span><span class="punctuation token">; + --hilights: blue; + --lowlights: green;</span> +<span class="punctuation token">}</span></code></pre> + +<div class="blockIndicator note"> +<p><strong>Примітка</strong>: З великою силою приходить велика відповідальність! З Гудіні ви можете придумати свій власний макет, сітку, або реалізацію регіонів, але робити це не завжди найкраща ідея. Робоча група CSS робить багато роботи щоб упевнетись, що всі функції є продуктивними, розглядає всі можливі країні випадки і забезпечує безпеку, конфіденційність і доступність. Коли ви почнете з СSS Гудіні, упевніться що ви дотримуєтесь цих стандартів і починайте з малого перш ніж перейти до більш амбітних проектів.</p> +</div> + +<h2 class="Documentation" id="Гудіні_API">Гудіні API</h2> + +<p>Ніжче ви можете знайти посилання на основну довідку про API, які знаходяться під егідою Гудіні, а також посилання на туторіали.</p> + +<div class="hidden"> +<p>Почніть з <a href="https://developer.mozilla.org/en-US/docs/Web/Houdini/learn">Houdini, an introduction</a> — тут ви знайдете коротку історію Гудіні а також швидкий огляд його головних особливостей.</p> +</div> + +<dl> + <dt>CSS Парсер API</dt> + <dd>API використовуючи CSS парсер, для парсингу CSS-подібних мов в слабо типізовані.<br> + <br> + Для цього АPI ще не написано туторіалу чи довідки.</dd> + <dt>API CSS властивостей і значеннь</dt> + <dd>Визначає API для нових CSS властивостей. Властивості зареєстровані з цим API забезпечені синтаксисом синтаксичного аналізу, який визначає тип, поведінкою успадкування, і початкове значення.<br> + <br> + <a href="/en-US/docs/Web/API/CSS_Properties_and_Values_API">CSS Properties and Values API reference</a><br> + <a href="/en-US/docs/Web/API/CSS_Properties_and_Values_API/guide">CSS Properties and Values API guide</a></dd> + <dt></dt> + <dt>CSS Typed OM</dt> + <dd>Перетворює CSSOM в значно типізований JavaScript перетворення може значно вплинути на продуктивність. CSS типізована ОМ виставляє CSS значення як JavaScript об'єкти та дозволяє ефективно керувати ним.<br> + <br> + <a href="/en-US/docs/Web/API/CSS_Typed_OM_API">CSS Typed OM reference</a><br> + <a href="/en-US/docs/Web/API/CSS_Typed_OM_API/Guide">CSS Typed OM guide</a></dd> + <dt>CSS Layout API </dt> + <dd> + <p>Призначений для поліпшення розтяжності CSS, це API дозволяє розробникам створювати свої власні алгоритми компонування, такі як макет або лінії прив'язки. Це ще не доступно спочатку.</p> + + <p>Для цього АPI ще не написано туторіалу чи довідки.</p> + </dd> + <dt>CSS Painting API</dt> + <dd> + <p>Призначений для поліпшення розтяжності CSS — дозволяє розробникам писати JavaScript функції що доволяють рисувати прямо в задній фон, границі, або зміст елементу за допомогою CSS функції <code>paint()</code> .<br> + <br> + <a href="/en-US/docs/Web/API/CSS_Painting_API">CSS Painting API reference</a><br> + <a href="/en-US/docs/Web/API/CSS_Painting_API/Guide">CSS Painting API guide </a></p> + </dd> + <dt>Worklets </dt> + <dd> + <p>API для запуску скриптів на різних етапах потоку рендерингу незалежно від головного JavaScript середовища. Worklets концептуально схожі на <a href="/en-US/docs/Web/API/Web_Workers_API/Using_web_workers">Web Workers</a>, і застосовуються для розширення движка рендерину.</p> + + <p><br> + <a href="/en-US/docs/Web/API/Worklet">Worklets reference</a></p> + </dd> +</dl> + +<h2 id="Інші_теми">Інші теми</h2> + +<p>Схожі теми, які можуть юути цікаві, так як вони можуть бути використані в поєднанні з API Гудіні цікавими способами.</p> + +<dl> + <dt>Composite Scrolling and Animation </dt> +</dl> |