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
ハマるSVG@CSS nite LP47
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Naoki Matsuda
September 03, 2016
Technology
480
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ハマるSVG@CSS nite LP47
Naoki Matsuda
September 03, 2016
More Decks by Naoki Matsuda
See All by Naoki Matsuda
管理画面の全体UXは利用時品質モデルで考える
readymadegogo
2
3.5k
インターフェースのユーザビリティ概論および調査手法について
readymadegogo
0
390
UIデザインのための行動・認知プロセス
readymadegogo
0
260
知っておくと得をする(かもしれない) SVGの基礎とviewBox
readymadegogo
1
180
XDはBeautiful SVGの夢を見るか
readymadegogo
4
1.5k
webフォントを120%活用するための基礎知識&最新動向
readymadegogo
7
3.7k
SVG is on your side @ MTDDC 2018
readymadegogo
6
2.2k
デザインフェーズにおけるワイヤーフレームとの付き合い方@WCAN201802
readymadegogo
5
500
ウェブデザインとセルフブランディング 2018
readymadegogo
2
310
Other Decks in Technology
See All in Technology
Flutter Widget Previewerで始めるUIプレビューとVRTの自動化
sakusaku3939
0
160
国際カードブランドルール変更に伴うクレジットカード決済取引仕様変更について
k1style
0
260
AWS DevOps Agentはどこまで任せられるか 〜機能の現在地と、機能拡張の実践〜
nyankotaro
0
300
データマネジメント × 法務で作りあげる、 freeeの新しいデータガバナンスへの軌跡
freee
PRO
2
550
Claude Code をローカルとサーバー上で利用した際の Bedrock 利用料をユーザー単位で一本化してみる
ohorig
0
190
スクラム祭り2026福井トラック_閉じたループから価値のスパイラルへ
kc_nakanishi
0
190
AIで選択肢が広がった組織設計の理想と現実
konifar
15
6.8k
AI秘書と毎日働くのはもう当たり前。開発以外の業務に足りない機能をどう埋める?
minorun365
PRO
4
1.9k
構造で守らせる データ・法務・セキュリティ・開発チームとつくる AI時代のデータガバナンスとデータ基盤のリアル
legalontechnologies
PRO
2
660
AIエージェントに 権限と鍵をどこまで渡すか
nrinetcom
PRO
2
150
「社外イベント=意識高い」の壁を壊せ!元々無関心だった僕らが部内で社外イベントを民主化して15人を連れ出すまで
say_no_w
0
160
DevelopersIO 2026 Tokyo 現時点の衛星通信サービスの現状を整理してみる
maroon1st
0
340
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
5
5.5M
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
380
Thoughts on Productivity
jonyablonski
76
5.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
620
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
530
Believing is Seeing
oripsolob
1
250
How to build a perfect <img>
jonoalderson
1
6.2k
Product Roadmaps are Hard
iamctodd
55
13k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
570
4 Signs Your Business is Dying
shpigford
187
23k
We Have a Design System, Now What?
morganepeng
55
8.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.4k
Transcript
吳䒭⠓爡תר׃ 匟歊湫埠
Sublime Text 3 User 吳䒭⠓爡תר׃ 匟歊湫埠
8FCⵖ⡲罏ךך *MMVTUSBUPSكؙة٦ر٦ةך侄猰剅 ֮ײֹ 瓐加⽆㡦 ♲ꥡٓنꞿ谏㻂ㄤծ㹧愮翯✳ 匟歊湫埠
·Δʲቕ·Δɾర·Δɾṇ·Δʳ ᶃ ͽͬͨΓ߹͍ͬͯΔɻ ᶄ ɾͳͲʹམͪࠐΉɻʮਂΈʹʵɾΔʯʮߔʹʵɾΔʯʮՌआۚͷ;ͪ ʹʵɾΓʗුӢ࢛໎ʯ ᶅ ܭུʹ͔͚ΒΕΔɻʮΘͳʹʵɾΔʯʮࢥ͏ͭ΅ʹʵɾΔʯ ᶆ ݅ʹͽͬͨΓ߹͏ɻద߹͢Δɻ͋ͯ·Δɻʮʹʵɾ͍ͬͯΔʯ
ᶇ ʢʮܕʹ·ΔʯͷܗͰʣߦಈɾදݱͳͲ͕ྨܕతͰ͋Δɻʮܕʹʵɾͬͨจষʯ ʮܕʹʵɾͬͨڭҭʯ ᶈ ઐ೦͢Δɻ·ͨɼເதʹͳͬͯಈ͖͕ͱΕͳ͘ͳΔɻݱͰଏޠతʹ༻͍Δɻ ʮࠓύιίϯʹʵɾ͍ͬͯΔʯʮੈؒϊࣄχʵɾϧʗʯʮਮΒ͖͠உʵɾ ΒͤʗුੈࢠɾҰஉʯʤʮΊΔʯʹର͢Δࣗಈࢺʥ େࣙྛୈࡾ൛ΑΓ
47(ח 㣄⚥חזלծ 縐חכת
47(ח 㣄⚥חזלծ 縐חַַ
47(ךⵃ欽朐屣
،صً٦ءّٝ ؎ٝةؙٓءّٝ Animation & Interaction
https://arrivabusandcoach.co.uk/buses-the-weird-and-wonderful
https://fleximize.com/mission/
ؽآُ،ٓ؎ئ٦ءّٝ Visualization
http://www.bbc.com/news/politics/eu_referendum/results https://nbremer.github.io/olympicfeathers/
http://flowingdata.com/2015/12/15/a-day-in-the-life-of-americans/
ٗ؞ Logos
None
،؎؝ٝ Icons
https://github.com/blog/2112-delivering-octicons-with-svg
https://sarasoueidan.com/blog/icon-fonts-to-svg/
➙㔐כծ崢䩛ז⢪倯״ 㖑ז⢪倯דך縐ח岣湡׃גת׃׳ֲ
ךחծ47(ך暴䗙
Standalone SVG )5.- $44 47( )5.- TWH TWH inline SVG
兛鸐ך歗⫷ؿ؋؎ٕה׃ג邌爙ׇׁ )5.-ך⚥חծ47(؝٦س湫䱸剅ֻ 兛鸐ך歗⫷ה殯ז暴䗙
兛鸐ך歗⫷ה殯ז暴䗙 WJFX#PY XJEUI IFJHIU QSFTFSWF"TQFDU3BUJP 䲽歗걄㚖ך䏟垥禸㹀纏 㹋㼄ך؟؎ؤ䭷㹀 䭁簭儗ך،ألؙز嫰⥂䭯倯岀ך䭷㹀
47(ךعوه؎ٝز 1 鼅 0
*&ה"OESPJE⟃♴ד عو 01
JOMJOF47(ך㜥さ JNH銲稆ך㜥さ *& "OESPJEד47(ך嫰桦ֶַָ׃ְ J04
ז 47(ך넝ׁ٥䌴ָ䭷㹀ׁגְזְ <svg viewBox="0 0 200 200"> … </svg>
ז 47(ך넝ׁ٥䌴ָ䭷㹀ׁגְזְ JOMJOF47(חכ IFJHIUBVUPָ⸬ַזְ QSFTFSWF"TQFDU3BUJPך 䮙⹛חغָؚ֮
鍑寸 TWH銲稆חծXJEUI IFJHIUQYד䭷㹀 <svg viewBox="0 0 200 200" ɹɹɹwidth="200px" height="200px">
… </svg> * CSSͰͷɺwidth,heightࢦఆͰՄ
鍑寸 "Jךչٖأهٝءـպחثؑحؙ׃זְ
JOMJOF47(ך'MVJE⻉ד عو 02
*& 4BGBSJדJOMJOF47(ָ'MVJEחזזְ TDSFFOXJEUI
ז *&דכծIFJHIUBVUPָ⸬ַזְ svg { height: auto; } QYח 㔿㹀ׁ )5.-$BOWBTך➬圫הずׄ
ז 4BGBSJծ$44ָIFJHIU㾩䚍馄ִזְ svg { height: auto; } QYח 㔿㹀ׁ )5.-$BOWBTך➬圫הずׄ
<svg width="200px" height="200px" viewBox="0 0 200 200" style="width: 300px; height: auto"> IFJHIU㾩䚍ָ ⮚⯓ׁ
鍑寸 QBEEJOHIBDL׃EJW銲稆ד㔲ֲ div.svg-container .svg-wrap > svg { display: block; position:
absolute; width: 100%; height: 100%; } .svg-container { position: relative; height:0; padding-top: calc(100%/200*200); } TWH
47(4QSJUFT 47(4UPSF דعو 03
icons.svg index.html Send Mail 47(4QSJUFTָծ邌爙ׁזְװꅾֻז <svg> <use xlink:href="icon.svg#train"/> </svg>
*& &EHFծ㢩鿇47(ַ*%撑דֹזְ icons.svg index.html Send Mail ז
J04⟃ծ撑׀החؙٔؒأز icons.svg index.html Send Mail ז
鍑寸 ،؎؝ٝ欽47(ծ)5.-חJOMJOFד㙵 index.html Send Mail <html> <body> <svg> <symbol id="icon1">…</symbol>
<symbol id="icon2">…</symbol> … </svg> <svg><use xlink:href="icon.svg#icon1"/ ></svg> </body>
J04⟃ծ撑ׅ״ח㹀纏ָ זְה邌爙ׁזְ ז index.html CPEZךꟗׄةؚך湫ח 47(،؎؝ٝ㹀纏׃גծ 撑דֹזְ㉏겗
鍑寸 47(ծ)5.-ךCPEZ湫♴חJOMJOFד㙵
47( CBDLHSPVOEJNBHFד عو 04
*&דծCBDLHSPVOETJ[FDPWFSֶַָ׃ֻז
鍑寸 TWH銲稆ךQSFTFSWF"TQFDU3BUJP㢌刿 <svg viewBox="0 0 200 200" preserveAspectRatio="xMidYMid slice"> …
</svg> * σϑΥϧτͰ "xMidYMid meet"
鍑寸 TWH銲稆ךQSFTFSWF"TQFDU3BUJP㢌刿 preserveAspectRatio="xMidYMid slice" = background-size: cover; background-position: center center;
[JOEFYדعو 05
JOMJOF47(ךTWH銲稆ծ[JOEFYדⵖ䖴דֹזְ 爳㕦礵莔ךꗺך㡮ծ长遤搀䌢ך갟ֹ֮կ尩繎埠ך蔃ך葿ծ渿罏 䗳邜ך椚֮כׅկֶ׀➂⛉׃ַ׆կ僰ך㢸ך㣄ך׀ ה׃կֹֽ罏鹴חכקןטծמהפח괏ךך㞒חずׄկ黅ֻ ך殯劉העִלծ兛ך馠넝ծ恌ך桬蜭ծ咿ךワ⟻ծך犡㿊ծ ֿכ涺ծ傊⚺⯓涽ך佟ח䖞כ׆ծ嚂׃噰ծ镡䙼מ Ⰵ׆ծ㣓♴ך✉ֿה䝎׆׃גծ孖ך䟴סהֿ濼 ׂא׃ַלծ⛉׃ַ׆׃גծ❕ׄח׃罏וזկ z-index: 100;
z-index: 50;
47(ד⢪ִ$44فٗػذ؍כ寸תגְ ז www.w3.org/TR/SVG/propidx.html
鍑寸 47(銲稆ծ)5.-ך銲稆ד㔲גⵖ䖴 爳㕦礵莔ךꗺך㡮ծ长遤搀䌢ך갟ֹ֮կ尩繎埠ך蔃ך葿ծ渿罏 䗳邜ך椚֮כׅկֶ׀➂⛉׃ַ׆կ僰ך㢸ך㣄ך׀ ה׃կֹֽ罏鹴חכקןטծמהפח괏ךך㞒חずׄկ黅ֻ ך殯劉העִלծ兛ך馠넝ծ恌ך桬蜭ծ咿ךワ⟻ծך犡㿊ծ ֿכ涺ծ傊⚺⯓涽ך佟ח䖞כ׆ծ嚂׃噰ծ镡䙼מ Ⰵ׆ծ㣓♴ך✉ֿה䝎׆׃גծ孖ך䟴סהֿ濼 ׂא׃ַלծ⛉׃ַ׆׃גծ❕ׄח׃罏וזկ z-index:
100; z-index: 50; EJW
47(ךذؗأزדعو 06
$ISPNFדծ47(簭㼭儗חذؗأزָֻ׆
剑㼭ؿؓٝز؟؎ؤ鏣㹀ָ剣⸬ַ ז
鍑寸 ذؗأز،ؐزٓ؎ٝ⻉ׅ ׃ծ ؿ؋؎ٕ؟؎ؤָ慧㟓ׅךדծ ؽحزوحف⻉ָكة٦ַ
㺘滠ׇׁػأךꥴד عو 07
נֻאְגְכ׆ךػأず㡦ծ זַꥴָדֹג׃תֲ
鍑寸 눤岀ךMUFSד♧涪鍑寸 <filter id="polycleaner" color-interpolation-filters="sRGB"> <feComponentTransfer> <feFuncA type="table" tableValues="0 0.5
1 1" /> </feComponentTransfer> </filter>
before after
http://codepen.io/grayghostvisuals/pen/JKmRwY
BVUPQSFYFSדعو 08
47(דכ歗⫷זו$44DMJQQBUIדوأؙדֹ = + JNBHF銲稆 DMJQ1BUI銲稆
<svg viewBox="0 0 250 250"> <image xlink:href="xxx.jpg" … class="clip-svg"/> </svg>
.clip-svg { clip-path: url(#clipping); } <svg width="0" height="0"> <defs> <clipPath id="clipping"> <polygon … /> </clipPath> </defs> </svg> JNBHF銲稆 وأؙ欽ךDMJQ1BUI銲稆 $44
4BGBSJדכծكٝت٦فٔؿ؍حؙأ➰ָֹ ⢘鎸׃ג֮הوأָؙ⸬ַזְ ז -webkit-clip-path: url(#clipping); clip-path: url(#clipping); -webkit-clip-path: url(#clipping); clip-path:
url(#clipping);
鍑寸 ˖ 搀椚ׇ׆ծ47(ךDMJQQBUI㾩䚍⢪ֲ ˖ BVUPQSFYFS麓⥋׃זְ <defs> <clipPath id="clip"> … </clipPath>
</defs> <image xlink:href="xxx.jpg" … clip-path="url(#clip)" />
3FBDUדعو 09
3FBDUדכ⢪ִ47(ך銲稆חⵖꣲָ֮ ז https://facebook.github.io/react/docs/tags-and-attributes.html
鍑寸 如ך銲稆⟃㢩⢪זְ • circle • clipPath • defs • ellipse
• g • image • line • linearGradient • mask • path • pattern • polygon • polyline • radialGradient • rect • stop • svg • text • tspan
鍑寸 TZNCPM銲稆ծVTF銲稆כ⢪ִזְךדծ 3FBDUDSFBUF$MBTTד؝ٝه٦طٝز⻉ const IconUmbrella = React.createClass({ render() { return
( <svg className="umbrella" xmlns="http://www.w3.org/ 2000/svg" width="32" height="32" viewBox="0 0 32 32" aria- labelledby="title"><title id="title">Umbrella Icon</title><path d="M27 14h5c0-1.105-1.119-2-2.5-2s-2.5 0.82… z"/></svg> ) } }); https://css-tricks.com/creating-svg-icon-system-react/
鍑寸 3FBDUַծׅץגך47(銲稆ה㾩䚍ָ אִַ״ֲחזת׃ https://facebook.github.io/react/docs/tags-and-attributes.html
47(ךت؎ؒحزד عو 10
וֲ׃גծ47(ؿ؋؎ٕ؟؎ؤָ㣐ֹֻז
鍑寸 ˖ ،ٝؕ٦ه؎ٝزך侧幾ׅ ˖ ך䏟垥侭侧⦼חさׇ
鍑寸 <rect x="80" y="40" fill="#FFCC00" width="30" height="30"/> <path fill="#FFCC00" d="M201.3,61.8c-3.3-18.1,7-36.8,..."/>
<polygon points="43.3,67.8 86.6,142.8 ..." fill="#FFCC00"/> QBUI銲稆ח㢌䳔׃ծ㾩䚍ך鎸鶢갫䲧ִծ H[JQ㖇簭遤ֲ
鍑寸 ؝٦سⰻחずׄ鎸鶢皘䨽ָ㢳ְקוծ 㖇簭⸬桦כぢ♳ׅ <path fill="#FC0" d="M80 40h30v30H80z"/> <path fill="#FC0" d="M201.3
61.8c-3.3-18.1 7-36.8…"/> <path fill="#FC0" d="M43.3 67.8l43.3 75H0"/>
ְַָד׃ד׃׳ֲַ
չ47(ծוְֻׁזպ ה䙼ת׃י
זהֹכծ 䩛㛙ְ⢪ְ倯ַכׄ
˖ ⽃杝ך47(ؿ؋؎ٕ ˖ TWH銲稆חכծWJFX#PY XJEUI IFJHIU㾩䚍䭷㹀 ˖ )5.-ךJNH銲稆ד⢪ֲ
J04 ֿזծוךـٓؐؠדקר㣐♱㣗
None
IUUQCJUMZMQTWHMJOL
吳䒭⠓爡תר׃ 匟歊湫埠 ָ֮הֲ׀ְׂת׃