Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FLEXBOX-MEN: Apocalypse
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Fuminori Mori
June 11, 2016
Technology
4
500
FLEXBOX-MEN: Apocalypse
2016-06-11開催のHTML Party かごんま 2016で行ったセッション「FLEXBOX-MEN: Apocalypse」のスライド。
Fuminori Mori
June 11, 2016
Tweet
Share
More Decks by Fuminori Mori
See All by Fuminori Mori
JSを使わなくてもCSSでできるようになったこと
moonglows76
0
2.2k
GRID RANGERS
moonglows76
0
220
Other Decks in Technology
See All in Technology
DevOpsエージェントで実現する!! AWS Well-Architected(W-A) を実現するシステム設計 / 20260307 Masaki Okuda
shift_evolve
PRO
3
240
Evolution of Claude Code & How to use features
oikon48
1
500
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
130
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
14k
楽しく学ぼう!ネットワーク入門
shotashiratori
0
240
自動テストが巻き起こした開発プロセス・チームの変化 / Impact of Automated Testing on Development Cycles and Team Dynamics
codmoninc
3
1.2k
20260305_【白金鉱業】分析者が地理情報を武器にするための軽量なアドホック分析環境
yucho147
1
190
技術的負債の泥沼から組織を救う3つの転換点
nwiizo
8
2.9k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
4
1.1k
8万デプロイ
iwamot
PRO
2
180
Eight Engineering Unit 紹介資料
sansan33
PRO
1
6.9k
大規模サービスにおける レガシーコードからReactへの移行
magicpod
1
160
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
55
12k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
140
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
180
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
YesSQL, Process and Tooling at Scale
rocio
174
15k
How to Talk to Developers About Accessibility
jct
2
150
Un-Boring Meetings
codingconduct
0
220
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
310
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
Practical Orchestrator
shlominoach
191
11k
Transcript
FLEXBOX-MEN: Apocalypse ʙdisplay: flex Ͱ ॊೈʹϨΠΞτ͠Α͏ʂʙ @HTML Party ͔͝Μ· 2016
ίʔσΟϯάσβΠϯɹ ࢙ݑ 1 © Coding Design, 2016
࣍ • ࣗݾհ • FLEXBOX-MEN: Apocalypse • ϨΠΞτํ๏ͷൺֱ • ศརϙΠϯτ
• Flexbox • ཕϙΠϯτ • ϑϨʔϜϫʔΫ • ·ͱΊ 2 © Coding Design, 2016
ࣗݾհ 3 © Coding Design, 2016
ࣗݾհ(1/3) • ໊લ ɹ࢙ݑ ʢΓɹ;ΈͷΓʣ • ੜ݄ ত516݄9 • ग़ɾݱॅॴ
ࣛࣇౡݝࣛࣇౡࢢ • ༰࢟ ؙϝΨω 4 © Coding Design, 2016
ࣗݾհ(2/3) • WebαΠτ੍࡞ • Webؔ࿈ٕज़ߨࢣ • Webؔ࿈ॻ੶ࣥච • ΠϕϯτӡӦ 5
© Coding Design, 2016
ࣗݾհ(3/3) • ΧϨʔLOVE!! ⭐ΧϨʔ ঊ #ঊ • ϏʔϧLOVE!! ⭐ࢁ؍ޫϗςϧ #ελτΤʔϧࠇ
• νϣίϨʔτLOVE!! ⭐ύςΟεϦʔϠφΪϜϥ #Ḉຎνϣίνοϓε 6 © Coding Design, 2016
WebͷϨΠΞτ ·͍͠ 7 © Coding Design, 2016
ո्ͷΑ͏ʹ Ε·͘Δ 8 © Coding Design, 2016
Ռͨͯ͠߈ུͰ͖Δ དྷΔͷ͔… 9 © Coding Design, 2016
10 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse 11 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse WebͷϨΠΞτͻͱےೄͰ͍͔ͳ͍ʂ ͦ͏ɺ͍͋ͭେո्… Webzilla!! 12 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse ϨΠΞτํ๏ͷൺֱ 13 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ϨΠΞτํ๏ͷൺֱ Webzilla Λ߈ུ͢Δ ༷ʑͳϨΠΞτํ๏ ͕ΘΕͨʂ 14 ©
Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ϨΠΞτํ๏ͷൺֱ 1. table 2. float 3. inline-block
4. position 15 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ϨΠΞτํ๏ͷൺֱ ͲΕଳʹ͖ͨ͢͠ ʹ͠… 16 © Coding Design,
2016
͏ʔΉɺWebzilla खڧ͍ʂ 17 © Coding Design, 2016
ॿ͚ͯʂ FLEXBOX-MENʂ 18 © Coding Design, 2016
19 © Coding Design, 2016
ݺΜ͔͍ͩʂ 20 © Coding Design, 2016
FlexboxΛͬͯ 21 © Coding Design, 2016
Ұॹʹ߈ུ͠Α͏ 22 © Coding Design, 2016
ͥͬ 23 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse ศརϙΠϯτ 24 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ศརϙΠϯτ FlexboxͷศརϙΠϯτͱ ࣮ࡍͷ͍ํΛݟ͍ͯ͜͏ʂ 25 © Coding Design,
2016
FLEXBOX-MEN: Apocalypse > ศརϙΠϯτ • HTML͕ߥΕͳ͍ • ্ԼਅΜதد͕ͤͰ͖Δ • ཁૉͷฒସ͕͑Ͱ͖Δ
• ཁૉͷվߦ࣌ʹ伱͕ؒͰ͖ͳ͍ • εΫϩʔϧόʔ͕දࣔ͞ΕΔ 26 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ศརϙΠϯτ ͜Ε·Ͱͷ͕Ұڍʹղܾʂ Ͱ͍ํΛݟͯΈΑ͏ʂ 27 © Coding Design,
2016
FLEXBOX-MEN: Apocalypse Flexbox 28 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox Flexboxͷجຊ 29 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox Flexboxͷجຊ Flexboxཁૉͱࢠཁૉ͕ඞཁͩʂ <div class="container"> <div class="item">item
1</div> <div class="item">item 2</div> <div class="item">item 3</div> </div> 30 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox Flexboxͷجຊ display: flex; ͰཁૉʹFlexboxΛઃఆ͢Δʂ .container {
display: flex; } 31 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox Flexboxͷجຊ flex-direction ͰࢠཁૉͷϨΠΞτΛ੍ޚͰ͖Δͧʂ row, row-reverse,
column, column-reverse ͩʂ .container { display: flex; flex-direction: column-reverse; } 32 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉͷਫฏํͷἧ͑ 33 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉͷਫฏํͷἧ͑ justify-content Ͱࢠཁૉͷਫฏํͷἧ͑Λ੍ޚͰ͖ΔΘʂ flex-start, flex-end,
center, space-between, space-around Αʂ .container { display: flex; justify-content: center; } 34 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉͷਨํͷἧ͑ 35 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉͷਨํͷἧ͑ align-items Ͱࢠཁૉͷਨํͷἧ͑Λ੍ޚͰ͖ΔͬͪΑʂ flex-start, flex-end,
center, baseline, stretch ͡ΌͬͲʂ .container { display: flex; align-items: center; } 36 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉͷંฦ͠ 37 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉͷંฦ͠ flex-wrap ͰࢠཁૉͷંΓฦ͠Λ੍ޚͰ͖Δͥʂ nowrap, wrap,
wrap-reverse ͩʂ .container { display: flex; flex-wrap: wrap-reverse; } 38 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉ͕ॎʹ ෳฒΜͩ࣌ͷἧ͑ 39 © Coding Design,
2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉ͕ॎʹෳฒΜͩ࣌ͷἧ͑ align-content Ͱࢠཁૉ͕ॎʹෳฒΜͩ࣌ͷἧ͑Λ੍ޚͰ͖Δʂ flex-start, flex-end,
center, space-between, space-around Λ͍ Μͤʂ .container { display: flex; align-content: flex-end; } 40 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉ͝ͱʹࢦఆ 41 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉ͝ͱʹࢦఆ flex-basis Ͱݸผͷࢠཁૉͷ࠷খ෯Λ੍ޚͰ͖ͬͨͬͲʂ widthϓϩύςΟʹࢦఆ͢ΔΑ͏ͳ ͬͰͳʂ
.item:nth-child(2) { flex-basis: 200px; } 42 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉ͝ͱʹࢦఆ align-self Ͱݸผͷࢠཁૉͷਨํͷἧ͑Λ੍ޚͰ͖ͬͪʂ flex-start, flex-end,
center, baseline, stretch ΛೖΕΜͦʂ .item:nth-child(2) { align-self: flex-end; } 43 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > Flexbox ࢠཁૉ͝ͱʹࢦఆ order Ͱݸผͷࢠཁૉͷॱ൪Λ੍ޚͰ͖Δͧʂͨ·͕͕ͬʂ ͡ΌͬͲʂ
.item:nth-child(2) { order: -1; } 44 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse ཕϙΠϯτ 45 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse ཕϙΠϯτ ࣮·ͩة͏͍ͱ͜Ζ͕͋ΔFlexboxʂ গ͚ͩ͠ൈਮͯ͠Έͨʂ 46 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ ϒϥβαϙʔτ • Can I use -
Flexible Box Layout Module http:/ /caniuse.com/#feat=flexbox 47 © Coding Design, 2016
48 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ ϒϥβαϙʔτ • IE10Ҏ্αϙʔτ • ରࡦɿ IE9ҎԼfloatͰϨΠΞτ͢Δ͔ɺ
flexibility.js Λ ͏͔ɺαϙʔτ֎ʹ͢Δ͔ • flexibility.jsະ༻ɻ͓͢͢Ί͠·ͤΜ 49 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ ϒϥβαϙʔτ • Android4.3Ҏલݹ͍༷Ͱͷ࣮ • ྫʣAndroid4.4Ҏ߱ display:
flex; ɹˠ Android4.3Ҏલ display: -webkit-box; • ରࡦɿ Sass flexbox mixin Λ͏͔ɺαϙʔτ֎ʹ͢Δ͔ 50 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ όά • IE10, IE11 • ཁૉʹmin-heightΛࢦఆ͢Δͱalign-items͕ޮ͔ͳ͍
• ରࡦɿ ཁૉͷ͞Βʹཁૉʹdisplay: flex; flex-direction: column;Λઃఆ 51 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ όά • IE10, IE11 • ࢠཁૉʹflex-basisΛઃఆ͠ͳ͍ͱ͍จষΛંΓฦ͞ͳ͍
• ରࡦɿ ෯ʹ߹Θͤͯࢠཁૉʹflex-basisͱmax-widthΛઃఆ • max-widthΛࢦఆ͢Δͷbox-sizing: border-box;ʹରԠͤ͞Δ ͨΊ 52 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ όά • IE10, IE11 • ࢠཁૉʹimgཁૉΛೖΕΔͱը૾ͷॎԣൺ่͕ΕΔ
• ରࡦɿ ࢠཁૉdivཁૉͳͲΛೖΕɺͦͷதʹimgཁૉΛೖΕ Δ 53 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ όά ৄ͘͠ Flexbugs ΛνΣοΫʂओʹIE10, 11͕ଟ͍ʂ όάɾղܾࡦͷσϞ͕͋ΔΑʂ
• Flexbugs 54 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ཕϙΠϯτ JavaScriptͰͷૢ࡞ • flex-directionorderͰॱ൪Λม͑ͯDOMͷॱ൪มΘ͍ͬͯ ͳ͍ • CSSͰॱ൪Λม͑ΔલͷHTML͕ϕʔεʹ೦಄ʹஔ͘ɻ
55 © Coding Design, 2016
flex-direction flex-wrap justify-content align-items flex-basis… 56 © Coding Design, 2016
ϒϥβαϙʔτ όά JavaScriptͷରԠ… 57 © Coding Design, 2016
͋͋ɺ͏಄͕͍ͬͺ ͍ͩ͊͊͊ʂʂʂʂ 58 © Coding Design, 2016
ͽΜΆʔΜ 59 © Coding Design, 2016
ͦΜͳ͋ͳͨʹ࿕ใɻ 60 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse ϑϨʔϜϫʔΫ 61 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse ϑϨʔϜϫʔΫ ͜ΜʹͪɻͰ͢ɻ όάରࡦ͞ΕͯͨΓ͢ΔͷͰɺϑϨʔϜϫʔΫΛ͓͏Ͷʂ 62 © Coding Design, 2016
FLEXBOX-MEN: Apocalypse > ϑϨʔϜϫʔΫ • Flexboxͷࣗ༝ʹ͍͍ͨਓ͚ • Sass flexbox mixin
• Autoprefixer • طଘͷFlexboxάϦουΛ͍͍ͨਓ͚(CSS) • Flexbox Grid • FlexboxάϦουΛΧελϚΠζ͍͍ͯͨ͠ਓ͚(Sass) • Flexbox Grid Sass 63 © Coding Design, 2016
·ͱΊ 64 © Coding Design, 2016
Flexbox ϨΠΞτ͢Δͷʹ ͢͝ʔ͘ศརʂ 65 © Coding Design, 2016
ͨͩ͠ɺ ରϒϥβʹҙʂ 66 © Coding Design, 2016
ϒϥβ͝ͱʢओʹIE10,11ʣͷ όάʹҙʂ 67 © Coding Design, 2016
͋͞࠷ޙͷରܾͩʂ WebzillaΛಈ͔ͯ͠ ಎ۸ʹೖΕΑ͏ʂ 68 © Coding Design, 2016
͋Γ͕ͱ͏!܅ͷ׆༂Ͱ ੈքٹΘΕͨΑʂ 69 © Coding Design, 2016
͜Ε͔ΒFlexboxΛ ͬͯੈքΛٹͬͯͶʂ 70 © Coding Design, 2016
͝ਗ਼ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠οοʂ 71 © Coding Design, 2016