Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Поговорим о верстке: Архитектура
Search
fliptheweb
January 28, 2016
Technology
560
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Поговорим о верстке: Архитектура
Видео —
https://youtu.be/Updm5lqdhN8
fliptheweb
January 28, 2016
Other Decks in Technology
See All in Technology
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.5k
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
WasmをRustにする
sansantech
PRO
0
220
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
480
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
1
1.8k
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
【Data Engineering Summit2026_登壇資料】医療ビッグデータ×AIエージェントを支えるデータ基盤とハーネスエンジニアリング
jmdc_presentation
0
140
その Valkey 使いこなしていますか?
onk
PRO
1
220
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
7
5.9k
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
310
Kiro Crewをはじめよう
kizawa2020
1
150
go-sqletch
moznion
0
140
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
The browser strikes back
jonoalderson
0
1.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Fireside Chat
paigeccino
43
4.1k
The Limits of Empathy - UXLibs8
cassininazir
2
720
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Transcript
Поговорим о верстке: Архитектура.* Корнаков Артур @fliptheweb aviasales.ru * доклад
так же известен под кодовым названием «семинар по верстке»
Я хреново верстаю Верстка — это всего лишь правильная расстановка
блоков и их адаптация под разные условия (устройства, вьюпорт, браузер и пр.) “ ”
Оформление Архитектура
Наследование, специфичность и каскад
Наследование ul { border: 4px solid #4fb2ff; color: #ff7019; }
li { background: #e9e9e9; }
Специфичность (вес ⚖) Калькулятор специфичности — http://specificity.keegan.st/ a = 1
a.class = 11 #id.class = 110 #id.class.other = 120
Мини-опрос a { color: red; } #header a.link { color:
blue; } #header .link { color: green; } #content a.link { color: magenta; } ойлютс 1 111 110 111
Мини-опрос .link.link.link { color: red; } a.link { color: blue;
} 30 11
None
.news .news-item a Бенчи селекторов — https://github.com/benfrain/css-performance-tests
Наследование, специфичность и каскад
None
.cabin-class-trigger .srch-cntrl-px-cbn-cls .cbn-cls-trvlrs-trgr .search-controls-pax-cabin-class .cabin-class-travellers-trigger
.list .news-list .tile-list
<ul class="news-list"> <li> <a href="#"> <span class="datetime">14:20 29 января</span> </a>
</li> </ul> .news-datetime .news-list li a span.datetime span.datetime
.news-list { li { a { span.datetime { } }
} } Препроцессоры .news-list { li {} a {} span.datetime {} }
None
.ticket { .title {color: red;} .price {} .proposals {} }
.hotel { .title {color: blue;} .stars {} } <div class=“ticket”> <div class=“price”>123</price> <div class=“title”>Москва — Магадан</div> <ul class=“proposals”></ul> </div> <div class=“hotel”> <div class=“title”>Grand Palace</div> <div class=“stars”></div> </div> <div class=“ticket”> <div class=“price”>123</price> <div class=“title”>Москва — Магадан</div> <ul class=“proposals”></ul> <div class=“hotel”> <div class=“title”>Grand Palace</div> <div class=“stars”></div> </div> </div>
Модульность или компонентность или блочность • Изолированность; • Переиспользование; •
Легкая модификация.
<div class="share"> <div class="header-logos"> <a href="#"></a> <div class="as_logo"></div> </a> </div>
</div> Больной ублюдок! Помоги Даше- путешественнице найти в каком файле править класс
Методологии БЭМ OOCSS SMACSS SUITCSS AMCSS MCSS DOCSS RSCSS Поздравляю,
вы послушали уже 7% доклада!
None
http://bem.info/ http://getbem.com/
Блок, элемент, модификатор Блок .news-list Элемент .news-list__item .news-list__item-favourite Модификатор
Изображение с сайта http://getbem.com/
Sass/LESS .block { &__content {} &__title {} } .block__content {}
.block__title {}
Миксование блоков <div class="news-item"> <div class="news-item__icon"></div> <div class="news-item__category badge —advise"></div>
<div class="news-item__content"></div> </div>
.b-facilities «b-» — это не БЭМ .facilities
.form-buy-results__to-city__slider__tab__column_buy Доклад Игоря Зенича про частые ошибки http://ihorzenich.github.io/talks/2015/frontendweekend-bem/ .form-buy-results__column_buy
<div class=“block”> <div class=“block__element”></div> </div> .block .block__element { } .block__element
{ }
<div class=“block”> <div class=“block__element grid__content”></div> </div> <div class=“block grid”> <div
class=“block__element grid__content”></div> </div>
SUITCSS Компонент .MyComponent Элемент .MyComponent-element .MyComponent--modifier Модификатор .MyComponent Стейт .is-animating
Atomic CSS или почему я не использую классы-хелперы .Mt10 {
margin-top: 10px; } .Pos-r { position: relative; } <div class="Fl-start Mend-10 My-2 Pos-r NoTextDecoration Ov-h Z-1 Pt-0 Ta-c”></div> Код с сайта http://my.yahoo.com/
ASCSS Блок .block Элемент .block__element .block.––modifier Модификатор .block Стейт .is-active
Scalable CSS Reading List (https://github.com/davidtheclark/scalable-css-reading-list) CSS Guidelines (http://cssguidelin.es/) Sass Guidelines
(http://sass-guidelin.es/) Must Watch CSS talks (https://github.com/AllThingsSmitty/must-watch-css) Что почитать?
Aviasales office Grand Palace, 2nd floor @fliptheweb
[email protected]
Cпасибо!