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
CSS
Search
4D Japan
August 01, 2020
Technology
29
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CSS
4D Japan
August 01, 2020
More Decks by 4D Japan
See All by 4D Japan
4D 21 R2 R3
miyako
0
12
4D 21 LTS
miyako
0
16
4D 21
miyako
0
38
4D 20 R10
miyako
0
41
4D 20 R9
miyako
0
32
4D 20 R7 & R8
miyako
0
81
Unicodeの話 (2007)
miyako
0
42
Unicodeの話 (2008)
miyako
0
48
Google Apps Integration (2012)
miyako
0
50
Other Decks in Technology
See All in Technology
CVE-2026-20833_脆弱性対応とAES 化について
jukishiya
0
360
そのタスクオンスケですか?
poropinai1966
0
130
Compose 新機能総まとめ / What's New in Jetpack Compose
yanzm
0
110
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
1
300
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
680
MySQL & MySQL HeatWave Report - June 2026
freshdaz
0
310
SRE依存からの脱却 運用を開 発チームへ移す、 フルサイ クル開 発体制の実践
joooee0000
0
180
從觀望到全公司落地:AI Agentic Coding 導入實戰 — 流程整合與安全治理
appleboy
1
780
どうして今サーバーサイドKotlinを選択したのか
nealle
0
200
RAGの精度向上とエージェント活用
kintotechdev
2
130
“全部コピーしない”ファイルデータの活用 : — FSx for ONTAP × S3 Tables × Icebergで作るメタデータカタログ
yoshiki0705
0
420
Kotlin 開発のツラミを爆破した話! / Explode the difficulty of Kotlin dev!
eller86
0
140
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
270
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
310
Producing Creativity
orderedlist
PRO
348
40k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Into the Great Unknown - MozCon
thekraken
41
2.6k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
640
Between Models and Reality
mayunak
4
360
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
New Earth Scene 8
popppiees
3
2.4k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
200
The Language of Interfaces
destraynor
162
27k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Transcript
4DϑΥʔϜͱCSS 4D Summit 2020
࣍ • CSSΛ༻͢Δཧ༝ • αϙʔτ͞ΕΔଐੑ/͞Εͳ͍ଐੑ • όΠφϦʔ͔ΒϓϩδΣΫτ • CSSηϨΫλʔ •
ద༻ͷ༏ઌॱҐ • σβΠϯ্ͷ੍ • σϞϯετϨʔγϣϯ
CSSΛ༻͢Δཧ༝
CSSΛ༻͢Δཧ༝ όΠφϦʔ σʔλϕʔε ϓϩδΣΫτ σʔλϕʔε
CSSΛ༻͢Δཧ༝ • ͘Ұൠతʹ༻͞Ε͍ͯΔ .button { font-family: Arial; font-size: 12px; color:
#CCC; } input { Background-color: #333;
CSSΛ༻͢Δཧ༝ • ͘Ұൠతʹ༻͞Ε͍ͯΔ • JSON ΦϒδΣΫτه๏ͱۙ ͍ܗࣜΛ͍ͯ͠Δ .button { font-family:
Arial; font-size: 12px; color: #CCC; } input { Background-color: #333; button: { fontFamily: Arial, fontSize: 12, stroke: #CCC } input: { fill: #333
CSSΛ༻͢Δཧ༝ • ͘Ұൠతʹ༻͞Ε͍ͯΔ • JSON ΦϒδΣΫτه๏ͱۙ ͍ܗࣜΛ͍ͯ͠Δ • ඪ४ςΩετܗࣜͰ͋Δ A
αϙʔτ͞ΕΔଐੑɾ αϙʔτ͞Εͳ͍ଐੑ
αϙʔτ͞ΕΔଐੑ 4D CSS borderStyle fill fontFamily fontSize fontStyle fontWeight stroke
textAlign textDecoration verticalAlign border-style background-color font-family font-size font-style font-weight color text-align text-decoration vertical-align
αϙʔτ͞ΕΔଐੑ 4D CSS borderStyle fill fontFamily fontSize fontStyle fontWeight stroke
textAlign textDecoration verticalAlign border-style background-color font-family font-size font-style font-weight color text-align text-decoration vertical-align
αϙʔτ͞ΕΔଐੑ
αϙʔτ͞Εͳ͍ଐੑ 1. CSSηϨΫλʔͱͯࣝ͠ผ͞ ΕΔଐੑ type: “…”, class: “…”,
αϙʔτ͞Εͳ͍ଐੑ 1. CSSηϨΫλʔͱͯࣝ͠ผ͞ ΕΔଐੑ 2. ܭࢉ͢Δඞཁͷ͋Δଐੑ method: “…”,
αϙʔτ͞Εͳ͍ଐੑ 1. CSSηϨΫλʔͱͯࣝ͠ผ͞ ΕΔଐੑ 2. ܭࢉ͢Δඞཁͷ͋Δଐੑ 3. શͯͷϑΥʔϜଐੑ windowMaxHeight: “…”,
windowTitle: “…”, Etc.
αϙʔτ͞Εͳ͍ଐੑ 1. CSSηϨΫλʔͱͯࣝ͠ผ͞ ΕΔଐੑ 2. ܭࢉ͢Δඞཁͷ͋Δଐੑ 3. શͯͷϑΥʔϜଐੑ 4. ͕ྻJSONϙΠϯλʔͱ
ͯ͠ࢦఆ͞Ε͍ͯΔଐੑ choiceList: […], excludedList: […], events: […], list: { $ref: … }
όΠφϦʔ͔Β ϓϩδΣΫτ
όΠφϦʔ͔ΒϓϩδΣΫτ όΠφϦʔϞʔυ styleSheets_mac.css styleSheets_windows.css
όΠφϦʔ͔ΒϓϩδΣΫτ ϓϩδΣΫτϞʔυ
όΠφϦʔ͔ΒϓϩδΣΫτ ϓϩδΣΫτϞʔυ
όΠφϦʔ͔ΒϓϩδΣΫτ 1. ελΠϧγʔτΛ༻͠ͳ͍ΦϒδΣΫτ 2. ελΠϧγʔτΛ༻͢ΔΦϒδΣΫτ
όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͠ͳ͍ΦϒδΣΫτ 1 2 3 4 5
"objects": { "Text": { "type": "text", "top": 24, "left": 23,
"width": 275, "height": 23, "fill": "#FFFACD", "borderStyle": "solid", "fontFamily": "Monaco", "fontSize": 18, "textAlign": "center", "text": "Hello 4D Summit" } } 1 2 3 4 5 όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͠ͳ͍ΦϒδΣΫτ
"objects": { "Text": { "type": "text", "top": 24, "left": 23,
"width": 275, "height": 23, "fill": "#FFFACD", "borderStyle": "solid", "fontFamily": "Monaco", "fontSize": 18, "textAlign": "center", "text": "Hello 4D Summit" } } όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͠ͳ͍ΦϒδΣΫτ 1 2 3 4 5 ϓϩδΣΫτϞʔυͰͷϓϩύςΟϦετ
όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͢ΔΦϒδΣΫτ 1 2 3 4 5
1 2 3 4 5 όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͢ΔΦϒδΣΫτ "objects": { "Text":
{ "type": "text", "top": 79, "left": 23, "width": 275, "height": 25, "fill": "#008000", "borderStyle": "solid", "class": "HeaderStyle", "stroke": "#FFFFFF", "textAlign": "center", "text": "Hello 4D Developers" } }
3 όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͢ΔΦϒδΣΫτ "objects": { "Text": { "type": "text", "top":
79, "left": 23, "width": 275, "height": 25, "fill": "#008000", "borderStyle": "solid", "class": "HeaderStyle", "stroke": "#FFFFFF", "textAlign": "center", "text": "Hello 4D Developers" } } /* styleSheets_mac.css */ .HeaderStyle { font-family: Monaco; font-size: 18px; } ϓϩδΣΫτϞʔυͰͷϓϩύςΟϦετ
1 2 3 4 5 όΠφϦʔ͔ΒϓϩδΣΫτ ελΠϧγʔτΛ༻͢ΔΦϒδΣΫτ "objects": { "Text":
{ "type": "text", "top": 79, "left": 23, "width": 275, "height": 25, "fill": "#008000", "borderStyle": "solid", "class": "HeaderStyle", "stroke": "#FFFFFF", "textAlign": "center", "text": "Hello 4D Developers" } }
CSS ηϨΫλʔ
CSS ηϨΫλʔ • ελΠϧΛద༻͢ΔཁૉΛબ͢Δͷʹ༻͢Δύλʔϯ • 4D Ͱ5ͭͷηϨΫλʔΛαϙʔτ͍ͯ͠·͢: ElementɺIDɺClassɺUniversalɺAttributes
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ Element ID Class
Universal Attributes CSS 4D
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D “button", "buttonGrid",
"checkbox", "combo", "dropdown", "groupBox", "input", "line", "list", "listbox", "oval", "picture", "pictureButton", "picturePopup", "plugin", "progress", "radio", "rectangle", "ruler", "spinner", "splitter", "stepper", "subform", "tab", "text", "view", "webArea", "write"
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D text {
… } button { … } input { … }
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D #myHeader {
… } #okButton { … } #nameInput { … }
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D .header {
… } text.header { … } .default { … }
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D * {
… }
CSS ηϨΫλʔ ΦϒδΣΫτͷλΠϓ ΦϒδΣΫτ໊ Ϋϥε શΦϒδΣΫτ ಛఆͷଐੑ 4D .buttonAction[action=accept] {
… } text[text=Hello] { … } text[text~=Hello] { … }
ద༻ͷ༏ઌॱҐ
ద༻ͷ༏ઌॱҐ ϑΝΠϧϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτఆٛ styleSheets_mac.css styleSheets_windows.css styleSheets.css 1 2 3 fontSize:
12 font-size: 14px; font-size: 18px; fontSize: 12 ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ϑΝΠϧϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτఆٛ styleSheets_mac.css styleSheets_windows.css styleSheets.css 1 2 3 font-size:
14px; font-size: 18px; font-size: 14px; ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ϑΝΠϧϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτఆٛ styleSheets_mac.css styleSheets_windows.css styleSheets.css 1 2 3 font-size:
18px; font-size: 18px; ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ηϨΫλʔϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτ໊ ಛఆͷଐੑ Ϋϥε 1 2 3 #myText {
font-size: 12px; text[text|=Hello] { font-size: 14px; .headerStyle { font-size: 18px; ΦϒδΣΫτఆٛ ΦϒδΣΫτͷܕ શΦϒδΣΫτ 4 5 text { font-size: 24px; * { font-size: 36px; "myText": { "type": "text", "class": "headerStyle", "text": "Hello 4D Summit" } font-size: 12px; ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ηϨΫλʔϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτ໊ ಛఆͷଐੑ Ϋϥε 1 2 3 text[text|=Hello] {
font-size: 14px; .headerStyle { font-size: 18px; ΦϒδΣΫτఆٛ ΦϒδΣΫτͷܕ શΦϒδΣΫτ 4 5 text { font-size: 24px; * { font-size: 36px; "myText": { "type": "text", "class": "headerStyle", "text": "Hello 4D Summit" } font-size: 14px; ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ηϨΫλʔϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτ໊ ಛఆͷଐੑ Ϋϥε 1 2 3 .headerStyle {
font-size: 18px; ΦϒδΣΫτఆٛ ΦϒδΣΫτͷܕ શΦϒδΣΫτ 4 5 text { font-size: 24px; * { font-size: 36px; "myText": { "type": "text", "class": "headerStyle", "text": "Hello 4D Summit" } font-size: 18px; ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ηϨΫλʔϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτ໊ ಛఆͷଐੑ Ϋϥε 1 2 3 ΦϒδΣΫτఆٛ ΦϒδΣΫτͷܕ
શΦϒδΣΫτ 4 5 text { font-size: 24px; * { font-size: 36px; "myText": { "type": "text", "class": "headerStyle", "text": "Hello 4D Summit" } font-size: 24px; ࣮ࡍͷදࣔ
ద༻ͷ༏ઌॱҐ ηϨΫλʔϨϕϧͰͷ༏ઌॱҐ ΦϒδΣΫτ໊ ಛఆͷଐੑ Ϋϥε 1 2 3 ΦϒδΣΫτఆٛ ΦϒδΣΫτͷܕ
શΦϒδΣΫτ 4 5 * { font-size: 36px; "myText": { "type": "text", "class": "headerStyle", "text": "Hello 4D Summit" } font-size: 36px; ࣮ࡍͷදࣔ
σβΠϯ্ͷ੍
σβΠϯ্ͷ੍ ϑΥʔϜͰCSSΛ༻͢ΔࡍʹؾΛ͚͍ͭͨ͜ͱ • CSSϑΥʔϜΤσΟλʔ্Ͱద༻͞Εͳ͍ • CSSͰͷఆٛɺϑΥʔϜ͕ϥϯλΠϜͰϩʔυ͞Ε ͨͱ͖ʹҰ͚ͩద༻͞ΕΔ • ϓϩύςΟϦετͰͷมߋશͯΦϒδΣΫτఆٛ ʹอଘ͞ΕɺCSSͰͷఆٛΑΓ༏ઌ͞ΕΔ
• CSSͷ༏ઌॱҐΛɺImportant λάΛ༻͢Δ͜ͱͰ ڧ੍తʹ্࣋ͪ͛Δ͜ͱ͕Մೳ
σϞϯετϨʔγϣϯ