Style Elements 사용해 보았습니다!
13273 단어 Elm
많은 설명이 부족하지만 걱정하지 마십시오.
자기 소개 부분 약어
CSS 좀 잘 모르겠어
CSS를 하고 싶지 않아
Style Elements
CSS의 Layout 부분과 Style 부분을 나누어 재정의한 접근입니다!
CSS의 Layout 부분과 Style 부분을 나누어 재정의한 접근입니다!
ChatClient의 Aizuchi를 개발하고 있습니다!
row
와 column
로 레이아웃comment : Comment -> Element Styles variation msg
comment { content, postedAt, postedBy, format, index } =
row None
[ padding 5
, spacing 8
, width <| fill 1
]
[ image ("https://flathash.com/" ++ postedBy.name) None [ width <| px 64, height <| px 64 ] empty
, column None
[ paddingTop 17, spacing 10 ]
[ row None [ spacing 20 ] []
, commentContent format content
]
]
column None
[ spacing 1
, width <| fill 1
, center
]
ClassName 같은 것은 Union Type으로 만든다
type Styles
= None
| TestStyle
| Main
| Logo
| FormCard
| Card
| CardHeader
| Button
| Input
| Tag
StyleSheet 정의
styleSheet : StyleSheet Styles variation
styleSheet =
Style.styleSheet <|
[ style None []
, style Main
[ Color.background <| Mixing.fade 0.8 Colors.white
, Color.text Colors.ultramarine
]
, style Logo
[ fontSize.size1
, Font.justifyAll
, Font.bold
]
, style FormCard
[ shadows
[ Shadow.box { shadow | offset = ( 0, 2 ), blur = 3 }
, Shadow.box { shadow | blur = 1 }
]
]
]
Element styles variation msg
이 스타일의 일부가된다.el None [] <| text "divになるよ"
column Main [] [text "flexboxになるよ"]
row FormCard [] [text "rowなflexboxになるよ"]
logo__1300303634
처럼 붙는다 (hash guard는 제외할 수도 있다 <style>~</style>
무엇이 기쁘다.
개인적으로
새로운 방법
Elm은 원래 독자적인 Graphics 라이브러리만으로 html 라이브러리가 없거나 GUI를 만드는데 좋은 방법을 목표로 하고 있는 곳이라고 생각합니다.
당신도 style-elements way로 만들어 보지 않겠습니까?
elm slack에 #style-elements 채널이 있습니다.
Elm에서 애니메이션하고 싶지만 상태 관리라든지 없어. CSS 애니메이션 등으로 할 수 있습니다.
style Button
[ Style.shadows
[ Shadow.box { shadow | offset = ( 0, 5 ), color = Mixing.darken 0.2 Colors.primary } ]
, Transition.transitions
[ { transition | duration = 200, props = [ "box-shadow", "transform" ] }
, { transition | duration = 400, props = [ "background" ] }
]
, hover
[ Style.translate 0 1 0
, Style.shadows
[ Shadow.box { shadow | offset = ( 0, 4 ), color = Mixing.darken 0.2 Colors.primary } ]
]
, pseudo "active"
[ Color.background <| Mixing.darken 0.1 Colors.primary
, Style.translate 0 5 0
, Style.shadows
[ Shadow.box { shadow | color = Mixing.darken 0.5 Colors.primary } ]
]
]
(사진 약어)
버튼 구니 쵸 니 밀 수있다! 재미! (완료)
애니메이션은 CSS로 할까 ...
Reference
이 문제에 관하여(Style Elements 사용해 보았습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/miyamo_madoka/items/7aa9ccf8a3d1d44e9a53
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
style Button
[ Style.shadows
[ Shadow.box { shadow | offset = ( 0, 5 ), color = Mixing.darken 0.2 Colors.primary } ]
, Transition.transitions
[ { transition | duration = 200, props = [ "box-shadow", "transform" ] }
, { transition | duration = 400, props = [ "background" ] }
]
, hover
[ Style.translate 0 1 0
, Style.shadows
[ Shadow.box { shadow | offset = ( 0, 4 ), color = Mixing.darken 0.2 Colors.primary } ]
]
, pseudo "active"
[ Color.background <| Mixing.darken 0.1 Colors.primary
, Style.translate 0 5 0
, Style.shadows
[ Shadow.box { shadow | color = Mixing.darken 0.5 Colors.primary } ]
]
]
Reference
이 문제에 관하여(Style Elements 사용해 보았습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/miyamo_madoka/items/7aa9ccf8a3d1d44e9a53텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)