Π Π°Π·Π½ΠΎΠ΅

Material ui: The React component library you always wanted

20.08.1990

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Layout для Material-UI. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ layout Π½Π° основС библиотСки… | by Daria Sidorova | NOP::Nuances of Programming

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²ΠΎΠ³ΠΎ Layout ΠΈΠ· material.io

Material-UI β€” ΠΎΠ΄Π½Π° ΠΈΠ· самых популярных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² react. Однако Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ инструкции ΠΈΠ»ΠΈ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ layout Π½Π° основС этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ приходится ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Drawer, Header (AppBar), Content ΠΈ Footer ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Π½Π΅ разбираСтся Π² Material-UI, потрСбуСтся ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 3–4 часа, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ (с высокой Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ придСтся Π² дальнСйшСм всС ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Ρ‹Π²Π°Ρ‚ΡŒ 😭).

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Ρ‹, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ созданиС layout ΠΎΡ‚Π½ΠΈΠΌΠ°Π΅Ρ‚ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ:

  1. НСобходимо ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ CSS Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ intermediate ΠΈ advanced, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π²Ρ‹ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с flexBox.
  2. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² экрана (ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ).
  3. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ зависимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. НапримСр, Ссли Drawer находится Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ Header, Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ Π² ΡˆΠΈΡ€ΠΈΠ½Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ экран ΠΈ содСрТимоС.

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π― Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт собой ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Material-UI ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ контСкста react.

yarn add @material-ui/core

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π΄Π΅ΠΌΠΎ-Π²Π΅Ρ€ΡΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ здСсь.

На ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ прСдставлСно взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ.

ВсС просто. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Root являСтся Provider для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ layout (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΏΠΎΠ·ΠΆΠ΅). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт (Nav, Header, Content ΠΈ Footer) присоСдиняСтся ΠΊ контСксту ΠΈ Π²Π΅Π΄Π΅Ρ‚ сСбя ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² зависимости ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Рассмотрим ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.

Π’ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ 9 ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

  1. navVariant β€” Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ допускаСт Drawer. УстанавливаСтся Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π² зависимости ΠΎΡ‚ экрана.
// example
const config = {
navVariant: {
xs: 'temporary', // recommended in mobile
sm: 'persistent',
md: 'permanent',
}
}

2. navWidth β€” ΡˆΠΈΡ€ΠΈΠ½Π° Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ (бСлая ΠΎΠ±Π»Π°ΡΡ‚ΡŒ). Π•Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ числом ΠΈΠ»ΠΈ Π² качСствС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π² зависимости ΠΎΡ‚ экрана).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ (drawer)

3. navAnchor β€” располоТСниС Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ установлСно left, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π΄ΠΊΠΎ измСняСтся. Однако ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚) ΠΈ ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ внСсти измСнСния.

4. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ collapsible страницу Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ. Кнопка сворачивания отобраТаСтся автоматичСски. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚).

5. collaspedWidth β€” ΡˆΠΈΡ€ΠΈΠ½Π° для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ Π² свСрнутом состоянии. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚).

6. clipped Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π½Π° сСрСдину экрана (навигация находится Π·Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ, Π° Π½Π΅ Π½ΠΈΠΆΠ΅). ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚), ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ являСтся ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… устройствах.

7. headerPosition β€” располоТСниС ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ AppBar (Header β€” это AppBar). ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚).

8. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ squeezed Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈ содСрТимоС ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π° экранС ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈ ΡΠΆΠΈΠΌΠ°ΡŽΡ‚ΡΡ (Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ влияниС Π½Π° Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ элСмСнты, находящиСся Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ…, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΡˆΠΈΡ€ΠΈΠ½Π° являСтся динамичСской). ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚).

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ squeezed (ошибка)ΠŸΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ squeezed (ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚)

9. footerShrink. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚Π·Ρ‹Π²Ρ‡ΠΈΠ²Ρ‹ΠΉ шаблон (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚).

Ошибка footerShrinkΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ вСрсия footerShrink

Π’ΠΎΡ‚ ΠΈ всС. Π Π°Π·Π²Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΅Ρ‰Π΅ ΠΏΡ€ΠΎΡ‰Π΅?

Π˜Π³Ρ€ΠΎΠ²Π°Ρ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠ° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ прСсСта. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅!

Для Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ Π½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΈΡΡŒ эти прСсСты, я создал Layout Builder. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ прямо сСйчас.

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅:

  • React Native vs Flutter
  • 9 UI-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пригодятся Π² 2019 Π³ΠΎΠ΄Ρƒ
  • 12 UI Grid-систСм ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для React Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Π² 2019 Π³ΠΎΠ΄Ρƒ

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ siriwatknp: Introducing Layout for Material-UI

ПолноС руководство ΠΏΠΎ React JS material-ui

26. 06.2018 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ записи ПолноС руководство ΠΏΠΎ React JS material-ui ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ 1,821 ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΎΠ²

ΠžΡ‚ Π°Π²Ρ‚ΠΎΡ€Π°: Π² React JS material-ui β€” это Ρ‡Π°ΡΡ‚ΡŒ Material Design. Material Design β€” это язык Π΄ΠΈΠ·Π°ΠΉΠ½Π°, Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ прСдставлСнный Google Π² 2014 Π³ΠΎΠ΄Ρƒ. Π­Ρ‚ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ°ΠΊΠ΅Ρ‚Ρ‹ Π½Π° основС сСтки, Π³ΠΈΠ±ΠΊΡƒΡŽ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹, дополнСния ΠΈ эффСкты Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ освСщСниС ΠΈ Ρ‚Π΅Π½ΠΈ. ЦСль Material Design сводится ΠΊ Ρ‚Ρ€Π΅ΠΌ Π²Π΅Ρ‰Π°ΠΌ: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, Унификация ΠΈ Настройка.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ β€” Material Design Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° прСдоставлСниС Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ языка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ синтСзируСт классичСскиС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Π΄ΠΈΠ·Π°ΠΉΠ½Π°. Унификация β€” ΠΎΠ½ Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π΅Π΄ΠΈΠ½ΠΎΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ систСмы, которая ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, устройствах ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… Π²Π²ΠΎΠ΄Π°. И Настройка обСспСчиваСт Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык ΠΈ Π³ΠΈΠ±ΠΊΡƒΡŽ основу для ΠΈΠ½Π½ΠΎΠ²Π°Ρ†ΠΈΠΉ ΠΈ Π±Ρ€Π΅Π½Π΄ΠΈΠ½Π³Π°.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния React Π² стилС Material Design. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π² этом, Π½ΠΎ для этой ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ material-ui.

ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Π΅ΠΌ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅

material-ui β€” это Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² React, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Google Material Design (material-ui Π½Π΅Π΄Π°Π²Π½ΠΎ выпустили v1 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ). Π­Ρ‚ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ само-ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΈ вводят Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ стили, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠΌ-ui, всС, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ, это Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΡƒΡŽ Π½ΠΈΠΆΠ΅.

npm install @material-ui/core

Π”Π°Π»Π΅Π΅, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основ material-ui, относящихся ΠΊ Material Design, ΠΈ посмотрим, ΠΊΠ°ΠΊ ΠΎΠ½Π° настраиваСтся.

Π’ΠΈΠΏΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠ°

Когда Ρ€Π΅Ρ‡ΡŒ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎ Material Design, ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ являСтся Roboto. Однако material-ui Π½Π΅ поставляСтся с Roboto ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π¨Ρ€ΠΈΡ„Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ React с использованиСм ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π΄Π²ΡƒΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Из CDN:

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500">

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ NPM

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² качСствС ΠΏΠ°ΠΊΠ΅Ρ‚Π° npm, ввСдя Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

npm install typeface-roboto --save

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

import 'typeface-roboto'

material-ui Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Typography. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Typography Π² основном позволяСт ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ тСкст Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

<Typography variant="title" color="inherit">Some text in here</Typography>

Бвойство variant ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ стили оформлСния Ρ‚Π΅ΠΌΡ‹, Π° color β€” это Ρ†Π²Π΅Ρ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°. Он ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚Π° Ρ‚Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ подходят для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

CSS Baseline

Если Π²Ρ‹ писали ΠΊΠΎΠ΄ front-end, Π²Ρ‹ ΡƒΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π½Π°Ρ‚ΡŒ ΠΎ normalize.css. Если Π½Π΅Ρ‚, это Π½Π°Π±ΠΎΡ€ для Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ элСмСнтов HTML ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² стилСй. material-ui прСдоставляСт ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ normalize.css β€” CssBaseline, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обСспСчиваСт изящный, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ простой Π½Π°Π±ΠΎΡ€ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… стилСй. CSSBaseline Π΄Π΅Π»Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

ЗакрСпляСт отступы Π²ΠΎ всСх Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…

ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° Material Design ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ сглаТиваниС ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ отобраТСния ΡˆΡ€ΠΈΡ„Ρ‚Π° Roboto

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π° Π½Π΅ указываСтся Π² html, Π½ΠΎ прСдполагаСтся, Ρ‡Ρ‚ΠΎ это 16px (Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ)

Π‘Π΅Ρ‚ΠΊΠ°

Адаптивный ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс Material Design основан Π½Π° ΠΌΠ°ΠΊΠ΅Ρ‚Π΅ с 12 столбцами. Π­Ρ‚Π° сСтка создаСт Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ.

БистСма сСтки material-ui характСризуСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Flexbox

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ²: ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΈ элСмСнты

Π¨ΠΈΡ€ΠΈΠ½Π° элСмСнтов задаСтся Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ…, поэтому ΠΎΠ½ΠΈ всСгда ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ ΠΈ ΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡƒΠΊΠ°Π·Π°Π½ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡ… Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ отступы для создания ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ элСмСнтами.

БущСствуСт ΠΏΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ сСтки: xs, sm, md, lg ΠΈ xl

Иконки

Иконки β€” ваТная Ρ‡Π°ΡΡ‚ΡŒ Material Design, ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ… для обозначСния дСйствия, для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ Ρ‚.Π΄. Они ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для обозначСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ„Π°ΠΉΠ»Π°, устройства ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°.

Иконки Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для прСдставлСния Ρ‚Π°ΠΊΠΈΡ… дСйствий, ΠΊΠ°ΠΊ Β«Π’ ΠΊΠΎΡ€Π·ΠΈΠ½ΡƒΒ», Β«ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒΒ» ΠΈ Β«Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π² панСлях ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, панСлях инструмСнтов, ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ… ΠΈ списках.

Иконки Π² material-ui ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ с использованиСм Π΄Π²ΡƒΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²: Icon для отобраТСния ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ² ΠΈΠΊΠΎΠ½ΠΎΠΊ ΠΈ SvgIcon для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ SVG ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΎΠ².

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ SvgIcon ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ элСмСнт SVG-ΠΊΠΎΠ½Ρ‚ΡƒΡ€Π° Π² качСствС своСго Π΄ΠΎΡ‡Π΅Ρ€Π½Π΅Π³ΠΎ элСмСнта ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ React, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΊΠΎΠ½Ρ‚ΡƒΡ€, ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ стилСй ΠΈΠΊΠΎΠ½ΠΊΠΈ ΠΈ Ρ€Π΅Π°ΠΊΡ†ΠΈΡŽ Π½Π° события ΠΌΡ‹ΡˆΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

Material- ui Ρ‚Π°ΠΊΠΆΠ΅ содСрТит ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ поставляСтся с прСдустановлСнными ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ React. Π­Ρ‚ΠΎ совсСм Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚, ΠΈ ΠΎΠ½ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΊΠΎΠ½ΠΊΠΈ Material, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ SvgIcon. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

npm install @material-ui/icons

Кнопки

Кнопки ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ дСйствия ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ. Они ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΡΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒ ΠΎ дСйствии, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ material-ui ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Button.

import Button from '@material-ui/core/Button';
<Button color="primary">Hello World</Button>

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Button ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ мноТСство Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ†Π²Π΅Ρ‚, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ Ρ‚. Π΄. ΠŸΠΎΠ»Π½Ρ‹ΠΉ список Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ здСсь.

Кнопки Π² Material-ui ΠΈ Material Design Π² Ρ†Π΅Π»ΠΎΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΠΎΡ€ΠΌ:

ПлоскиС кнопки

ПлоскиС ΠΊΠ½ΠΎΠΏΠΊΠΈ β€” это ΠΊΠ½ΠΎΠΏΠΊΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с тСкстом. Они Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ†Π²Π΅Ρ‚Π° Ρ„ΠΎΠ½Π° ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹. Они ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π°Ρ…, панСлях инструмСнтов ΠΈΠ»ΠΈ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² элСмСнты. Они Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π°Π»ΠΈΠ²ΠΊΠΈ, Π½ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Ρ†Π²Π΅Ρ‚ΠΎΠΌ.

<Button color="primary">Primary</Button>

ΠšΠΎΠ½Ρ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ

ΠšΠΎΠ½Ρ‚ΡƒΡ€Π½Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ β€” это тСкстовыС ΠΊΠ½ΠΎΠΏΠΊΠΈ срСднСй Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Они Π²Π΅Π΄ΡƒΡ‚ сСбя ΠΊΠ°ΠΊ плоскиС ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π½ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠΎΠ½Ρ‚ΡƒΡ€ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π²Π°ΠΆΠ½Ρ‹Ρ… дСйствий, Π½ΠΎ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ основными ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ дСйствия Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π˜Ρ… внСшний Π²ΠΈΠ΄ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ характСризуСтся Π³Ρ€Π°Π½ΠΈΡ†Π΅ΠΉ ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ†Π²Π΅Ρ‚Π° Ρ„ΠΎΠ½Π° ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ.

<Button variant="outlined">Default</Button>

ΠŸΠΎΠ΄Π½ΡΡ‚Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ

ΠŸΠΎΠ΄Π½ΡΡ‚Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ. Они ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° ΠΈ ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ.

<Button variant="raised" color="secondary">Secondary</Button>

Π“ΠΈΠ±ΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ дСйствия

Π“ΠΈΠ±ΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ дСйствия (FAB) ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ основныС дСйствия, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ составлСниС Π½ΠΎΠ²ΠΎΠ³ΠΎ элСктронного письма, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ изобраТСния.

Они ΠΈΠΌΠ΅ΡŽΡ‚ Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΡ€ΡƒΠ³Π° ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ всСх Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²ΠΈΠ΄ΠΎΠ² ΠΊΠ½ΠΎΠΏΠΎΠΊ. ΠŸΡ€ΠΈ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠΈ фокусом примСняСтся ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ ΠΎΠ½ΠΈ ΡΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ. Они ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ дСйствия ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ.

<Button variant="fab" color="primary" aria-label="add"><AddIcon /</Button>

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ material-ui

material-ui содСрТит ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React Π² Ρ‚Π΅ΠΌΠ΅ Material Design. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ material-ui. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° CodeSandbox, пСрСйдя ΠΏΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ссылкам.

ПанСль прилоТСния

ПанСль прилоТСния, Ρ€Π°Π½Π΅Π΅ извСстная ΠΊΠ°ΠΊ панСль дСйствий Π² Android, выполняСт Ρ€ΠΎΠ»ΡŒ мСню Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ.

Π­Ρ‚ΠΎ панСль инструмСнтов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для Π±Ρ€Π΅Π½Π΄ΠΈΠ½Π³Π°, Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ, поиска ΠΈ дСйствий. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ панСль прилоТСния, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ эти Π΄Π²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈΠ· material-ui:

import AppBar from '@material-ui/core/AppBar';
import Toolbar from '@material-ui/core/Toolbar';

Навигация

НиТниС Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ мСню Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π²Π½ΠΈΠ·Ρƒ, ΠΎΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ прСдставлСниями Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ.

МСню Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ содСрТит ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ… Π΄ΠΎ пяти дСйствий, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТит ΠΈΠΊΠΎΠ½ΠΊΡƒ ΠΈ ΠΌΠ΅Ρ‚ΠΊΡƒ. Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ°Π½Π΅Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с трСмя дСйствиями Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΈΠΊΠΎΠ½ΠΊΡƒ, Ρ‚Π°ΠΊ ΠΈ ΠΌΠ΅Ρ‚ΠΊΡƒ.

Π’ΠΊΠ»Π°Π΄ΠΊΠΈ

Π’ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π»Π΅Π³ΠΊΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ прСдставлСниями. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ простой Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ Π±Π΅Π· Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅, ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ с нСсколькими Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ. Π’ΠΊΠ»Π°Π΄ΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΈΠΊΠΎΠ½ΠΎΠΊ Π² качСствС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² / ярлыков.

Бписки

Бписки ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ нСсколько ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ², располоТСнных Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ элСмСнт. Бписки состоят ΠΈΠ· Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ³ΠΎ столбца строк. КаТдая строка содСрТит ΠΏΠ»ΠΈΡ‚ΠΊΡƒ. ΠŸΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹Π΅ дСйствия прСдставлСны ΠΏΠ»ΠΈΡ‚ΠΊΠ°ΠΌΠΈ, Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ β€” ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ ΠΈ тСкстом.

ΠšΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ

ΠšΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠ° прСдставляСт собой лист ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слуТит Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π° Π² Π±Π»ΠΎΠΊ с Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ. ΠšΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ β€” ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ срСдство отобраТСния ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, состоящСго ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… элСмСнтов. ΠšΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, содСрТат ΠΏΡ€ΠΈΠ·Ρ‹Π² ΠΊ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ.

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹

ΠœΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ обСспСчиваСт основу для создания Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ², Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… ΠΎΠΊΠΎΠ½, лайтбоксов ΠΈ Ρ‚.Π΄. Всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° наТимаСтся модальная ΠΊΠ½ΠΎΠΏΠΊΠ°, ΠΎΠ½Π° выполняСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

УправляСт стСком Π΄ΠΈΠ°Π»ΠΎΠ³Π°

Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ Ρ„ΠΎΠ½, для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ взаимодСйствия Π½ΠΈΠΆΠ΅ модального ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹

ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ управляСт фокусом, пСрСходя ΠΊ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Ρƒ ΠΈ сохраняя Π΅Π³ΠΎ, ΠΏΠΎΠΊΠ° ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΡƒ содСрТимого страницы ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ

АвтоматичСски добавляСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€ΠΎΠ»ΠΈ ARIA

Бписок сСтки

Бписки сСтки ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ стандартным прСдставлСниям списков, рассмотрСнным Π²Ρ‹ΡˆΠ΅. Бписок сСтки состоит ΠΈΠ· ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π΅Π³ΠΎΡΡ шаблона ячССк, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Ρ… Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ, ΠΈ Π² Π½ΠΈΡ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выводятся изобраТСния.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ списка Grid ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½ΠΈΠΆΠ΅, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ GridListTileBar для добавлСния налоТСния Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ GridListTile. НалоТСниС ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ, ΠΏΠΎΠ΄Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΈ Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½ΠΎΠ΅ дСйствиС β€” Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ IconButton β€” ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’Π°Π±Π»ΠΈΡ†Ρ‹

Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π°Π±ΠΎΡ€Ρ‹ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Они ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² стационарных ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°Ρ….
Π’Π°Π±Π»ΠΈΡ†Π° Π΄Π°Π½Π½Ρ‹Ρ… содСрТит строку Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π²Π²Π΅Ρ€Ρ…Ρƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ пСрСчислСны названия столбцов, Π° Π·Π°Ρ‚Π΅ΠΌ строки Π΄Π°Π½Π½Ρ‹Ρ…. Для доступности ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ столбСц установлСн Π² качСствС элСмСнта th со scope β€” Β«rowΒ». Π­Ρ‚ΠΎ позволяСт экранным Π΄ΠΈΠΊΡ‚ΠΎΡ€Π°ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ячСйки ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ строки ΠΈ столбца.

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ΅ использованиС Ρ‚Π°Π±Π»ΠΈΡ† ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π—Π΄Π΅ΡΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‡Π΅ΠΊ-боксы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π—Π΄Π΅ΡΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ»ΠΈΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ строки с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡ… Π²Ρ‹Π±ΠΎΡ€Π°.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Вопрос Π² Ρ‚ΠΎΠΌ, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π»ΠΈ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Material Design Π² своСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ React? ΠžΡ‚Π²Π΅Ρ‚ Π½Π° этот вопрос зависит ΠΎΡ‚ использования вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Π΅Π³ΠΎ Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ. Material Design ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… интСрфСйсов для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π΄ΠΎΡ…Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π²Π°ΡˆΠΈΡ… Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€ΠΎΠ² Π·Π°Π΄ΡƒΠΌΠ°Ρ‚ΡŒΡΡ ΠΎ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° руководящих ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ….

Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, Ссли Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ провСсти Ρ€Π΅Π±Ρ€Π΅Π½Π΄ΠΈΠ½Π³, Material Design ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π½Π΅ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅. Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ваш Π±Ρ€Π΅Π½Π΄ выглядСл ΠΊΠ°ΠΊ сотни Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π΅Π±-сайтов Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅? Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Material Design, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ response-md, materialize (CSS framework).

Автор: Yomi

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: https://blog.logrocket.com/

РСдакция: Команда webformyself.

Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΊ использованию ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, бСсплатны навсСгда

MUI Core

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ постоянно растущий список ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² React, Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΊ использованию, бСсплатны навсСгда ΠΈ всСгда ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΎ доступности. ΠœΡ‹ создали Π±Π°Π·ΠΎΠ²Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса для вашСй Π΄ΠΈΠ·Π°ΠΉΠ½-систСмы, поэтому Π²Π°ΠΌ это Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹

Поиск Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ React UI

2Spot MUI

3Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ MUI

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ MUI Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ. Они самодостаточны ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π²Π½Π΅Π΄Ρ€ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ стили, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌ Π½ΡƒΠΆΠ½Ρ‹ для отобраТСния.

ИспользованиС многоязыкового ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Π°ΠΆΠ½Ρ‹Ρ… Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ.

Π’Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π½Ρ‹ΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½

Подвал

Подвал

0,5 Π—Π²Π΅Π·Π΄1 Π—Π²Π΅Π·Π΄Π°1,5 Π—Π²Π΅Π·Π΄Π°2 Π—Π²Π΅Π·Π΄Π°2,5 Π—Π²Π΅Π·Π΄Π°3 Π—Π²Π΅Π·Π΄Π°3,5 Π—Π²Π΅Π·Π΄Π°4 Π—Π²Π΅Π·Π΄Π°4,5 Π—Π²Π΅Π·Π΄Π°5 Π—Π²Π΅Π·Π΄Π°ΠŸΡƒΡΡ‚ΠΎΠΉ сила Π»Π΅Π΄Π½ΠΈΠΊΠΎΠ², постоянство ΠΆΠΈΠ·Π½ΠΈ ΠΈ спокойствиС Высокой Π‘ΡŒΠ΅Ρ€Ρ€Ρ‹. Он славится своими гигантскими Π΄Ρ€Π΅Π²Π½ΠΈΠΌΠΈ сСквойями ΠΈ Π³Ρ€Π°Π½ΠΈΡ‚Π½Ρ‹ΠΌΠΈ скалами Эль-ΠšΠ°ΠΏΠΈΡ‚Π°Π½ ΠΈ Π₯Π°Ρ„-Π”ΠΎΡƒΠΌ.

Π›ΡƒΡ‡ΡˆΠΈΠ΅ Π² ΠΌΠΈΡ€Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ MUI прСдоставлСниС Π½Π΅ΠΏΡ€Π΅Π²Π·ΠΎΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… возмоТностСй ΠΊΠ°ΠΊ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ρ‚Π°ΠΊ ΠΈ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²

Π‘ΠΎΠ»Π΅Π΅ 40 ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ²

ΠœΡ‹ создали Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для вашСй систСмы проСктирования, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ Π΅Ρ‰Π΅ быстрСС Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ классный ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ ΠΌΠ΅Ρ‡Ρ‚Π°Π»ΠΈ. ΠœΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π²Π°ΡˆΡƒ спину!

Π“ΠΎΡ€Π°Π·Π΄ΠΎ большС
 

БобствСнный ΡΡ‚ΠΈΠ»ΡŒ!

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ систСму Π΄ΠΈΠ·Π°ΠΉΠ½Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ слоТныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚Π΅ΠΌ. Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ с использования Google Material Design.

Π’Π΅ΠΌΡ‹

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ свою Π΄ΠΈΠ·Π°ΠΉΠ½-систСму Ρ‚Π°ΠΊΠΎΠΉ, ΠΊΠ°ΠΊΠΎΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΅Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»Π΅Π³ΠΊΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΊ вашим потрСбностям. Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро Π½Π°Ρ‡Π°Ρ‚ΡŒ с Material Design.

Π£Π»ΡŒΡ‚Ρ€Π°Ρ„ΠΈΠΎΠ»Π΅Ρ‚

Подвал β€’ Рядом с собой

 <ΠšΠ°Ρ€Ρ‚Π°
  Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ = "Π² ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ…"
  Ρ… = {{
    Ρ€: 1,
    дисплСй: «гибкий»,
    flexDirection: {xs: 'столбСц', sm: 'строка'},
  }}
>
  
  
    <Випография
      Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ = "Ρ‚Π΅Π»ΠΎ1"
      Ρ†Π²Π΅Ρ‚ = "тСкст.основной"
      fontWeight={600}
      Ρ… = {{
        textAlign: {xs: 'Ρ†Π΅Π½Ρ‚Ρ€', sm: 'Π½Π°Ρ‡Π°Π»ΠΎ'},
        ΠΌΡ‚: {кс: 1,5, см: 0},
      }}
    >
      ΡƒΠ»ΡŒΡ‚Ρ€Π°Ρ„ΠΈΠΎΠ»Π΅Ρ‚
    
    <Випография
      ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ = "Π΄Π΅Π»"
      Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ = "Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ"
      Ρ†Π²Π΅Ρ‚ = "тСкст. Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½Ρ‹ΠΉ"
      fontWeight={500}
      sx={{ textAlign: {xm: 'Ρ†Π΅Π½Ρ‚Ρ€', sm: 'Π½Π°Ρ‡Π°Π»ΠΎ' } }}
    >
Подвал β€’ Π’Π½Π΅ сСбя <Π‘Ρ‚Π΅ΠΊ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ = "ряд" ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» = {1} Ρ… = {{ ΠΌ: 2, justifyContent: {xs: 'space-between', sm: 'flex-start'}, }} > <Кнопка со Π·Π½Π°Ρ‡ΠΊΠΎΠΌ aria-label={ΠΏΠ°ΡƒΠ·Π°? 'воспроизвСдСниС' : 'ΠΏΠ°ΡƒΠ·Π°'} sx={{ΠΌΡ…: 1}} onClick={() => setPaused((val) => !val)} > {ΠΏΠ°ΡƒΠ·Π°? : }

Бтилизация

БыстроС Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ настройка Π»ΡŽΠ±Ρ‹Ρ… стилСй с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ CSS

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρ‹ CSS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ быстрСС ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΈ стилизации любого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°.

123 Main St, Phoenix, AZ

$280 000 — $310 000

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ достовСрности 85%

 
  
  
    <Випографский Π²Π°Ρ€ΠΈΠ°Π½Ρ‚="body2" color="text.secondary">
      123 Main St, Ѐиникс, Аризона
    
    <ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Ρ‚ΠΈΠΏΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠΈ="div" fontWeight="bold">
      280Β 000 – 310Β 000Β Π΄ΠΎΠ»Π»Π°Ρ€ΠΎΠ² БША
    
    <ΠšΠΎΡ€ΠΎΠ±ΠΊΠ°
      Ρ… = {{
        ΠΌΠ»: -1,
        ΠΌΡ‚: 0,75,
        пикс: 1,
        Ρ€Ρƒ: 0,5,
        границаРадиус: 1,
        дисплСй: «гибкий»,
        Ρ‚ΠΈΠΏΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠ°: 'Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ',
        bgcolor: (Ρ‚Π΅ΠΌΠ°) =>
          theme. palette.mode === 'Ρ‚Π΅ΠΌΠ½Ρ‹ΠΉ' ? 'ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ.900' : "основной.50",
        Ρ†Π²Π΅Ρ‚: (Ρ‚Π΅ΠΌΠ°) =>
          theme.palette.mode === 'Ρ‚Π΅ΠΌΠ½Ρ‹ΠΉ' ? '#fff' : 'основной.700',
      }}
    >
      
      Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ достовСрности 85%
    
  
 

БообщСство

ΠŸΠΎΠ»ΡƒΡ‡Π°ΠΉΡ‚Π΅ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΠΉΡ‚Π΅, ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΠ²ΡˆΠΈΡΡŒ ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ сообщСству участников

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π±Ρ‹Π»ΠΈ созданы ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Ρ€ΡƒΠΊΠ°ΠΌΠΈ ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ. ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΊ сообщСству, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π½Π°ΠΌ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π΅Ρ‰Π΅ большС!

Π£Π·Π½Π°ΠΉΡ‚Π΅ большС

3,2 ΠΌ

Π•ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° NPM

78K

Π—Π²Π΅Π·Π΄Ρ‹ Π½Π° GitHub

2,4K

Π’ΠΊΠ»Π°Π΄Ρ‡ΠΈΠΊΠΈ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным источником

17K

Π‘Π²ΠΈΡ‚Ρ€ΠΈΠ½Ρ‹ Π² Π’Π²ΠΈΡ‚Ρ‚Π΅Ρ€Π΅

Установка — ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» UI

Установка. самый популярный Π² ΠΌΠΈΡ€Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ React UI.

Установка ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

ЗапуститС ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚:

npm

 npm install @mui/material @emotion/react @emotion/styled
 

пряТа

 пряТа Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ @mui/material @emotion/react @emotion/styled
 

Π‘ΠΎ стилСвыми ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Emotion Π² качСствС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° стилСй ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Если вмСсто этого Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стилизованныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄:

npm

 npm install @mui/material @mui/styled-engine-sc styled-components
 

пряТа

 пряТа Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ @mui/material @mui/styled-engine-sc styled-components
 

ΠŸΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅ руководство ΠΏΠΎ Π΄Π²ΠΈΠΆΠΊΡƒ Styled для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ styled-components.

ΠžΠ΄Π½ΠΎΡ€Π°Π½Π³ΠΎΠ²Ρ‹Π΅ зависимости

react >= 17.0.0 ΠΈ react-dom >= 17.0.0 ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΡ€Π°Π½Π³ΠΎΠ²Ρ‹ΠΌΠΈ зависимостями.

Π¨Ρ€ΠΈΡ„Ρ‚ Roboto

Material UI ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для использования ΡˆΡ€ΠΈΡ„Ρ‚Π° Roboto ΡˆΡ€ΠΈΡ„Ρ‚ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ npm ΠΈΠ»ΠΈ yarn Ρ‡Π΅Ρ€Π΅Π· Fontsource ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· CDN Google Fonts.

Π½ΠΏΠΌ

 Π½ΠΏΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ @fontsource/roboto
 

пряТа

 пряТа Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ @fontsource/roboto
 

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² свою Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

 ΠΈΠΌΠΏΠΎΡ€Ρ‚ '@fontsource/roboto/300. css';
ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ '@fontsource/roboto/400.css';
ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ '@fontsource/roboto/500.css';
ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ '@fontsource/roboto/700.css';
 

Fontsource ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π½Π°Π±ΠΎΡ€ΠΎΠ², насыщСнности ΠΈ стилСй. ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ³Ρ€Π°Ρ„ΠΈΠΊΠΈ Material UI ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ зависит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ вСса ΡˆΡ€ΠΈΡ„Ρ‚Π° 300, 400, 500 ΠΈ 700.

Google Web Fonts

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚ Roboto Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google Web Fonts CDN, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π° Π² Ρ„Π°ΠΉΠ» 9 вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.0120 <Π³ΠΎΠ»ΠΎΠ²Π° /> Ρ‚Π΅Π³:

 <ссылка
  ΠΎΡ‚Π½ = "Ρ‚Π°Π±Π»ΠΈΡ†Π° стилСй"
  href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap"
/>
 

Π—Π½Π°Ρ‡ΠΊΠΈ

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π·Π½Π°Ρ‡ΠΊΠ° ΡˆΡ€ΠΈΡ„Ρ‚Π° ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ созданныС Π·Π½Π°Ρ‡ΠΊΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² SVG (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² дСмонстрационных Π·Π½Π°Ρ‡ΠΊΠ°Ρ…), Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚ Π·Π½Π°Ρ‡ΠΊΠΎΠ² ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ². Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ npm ΠΈΠ»ΠΈ yarn ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CDN Google Web Fonts.

Π½ΠΏΠΌ

 Π½ΠΏΠΌ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ @mui/icons-material
 

пряТа

 пряТа Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ @mui/icons-material
 

Google Web Fonts

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚ Material Icons Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google Web Fonts CDN, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π° Π² Ρ‚Π΅Π³ вашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Font Icon , Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ сначала Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡˆΡ€ΠΈΡ„Ρ‚ Material Icons.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *