рдЪрд▓реЛ рдмреБрд╢ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдирд╣реАрдВ рд╣рд░рд╛рддреЗ рд╣реИрдВ, рдЪрд▓реЛ рдЗрд╕реЗ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ: рдЕрдЪреНрдЫрд╛ рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдмрд╣реБрдд, рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИред рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЧрдбрд╝рдмрдбрд╝ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╡реЗ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕реАрдПрд╕рдПрд╕ рдирд╣реАрдВред

рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓реЗрдЦрдХ, рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдЖрдЬ рд╣рдо рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рд▓рд╛ рд░рд╣реЗ рд╣реИрдВ, рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рд╡рд╣ рдЦреБрдж рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЙрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ рдЬреЛ рд╕реАрдПрд╕рдПрд╕ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЖрд╕-рдкрд╛рд╕ рдХреЛрдИ рдирд╣реАрдВ рд╣реИред рдЖрдЬрдХрд▓, рдбрд┐рдЬрд╛рдЗрди рдкрд░ рдмрд╣реБрдд рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЬрд┐рд╕реЗ "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рд╕реАрдПрд╕рдПрд╕ рдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЗрд╕ рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рд╡реЗрдм рдкреЗрдЬ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рдЕрдкрдиреЗ рдХреМрд╢рд▓ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рднреА рдХреА рдорджрдж рдХрд░рдирд╛ рд╣реИред
рд╕реАрдПрд╕рдПрд╕ рдореБрджреНрджреЛрдВ
рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╢реИрд▓рд┐рдпреЛрдВ рдЖрдорддреМрд░ рдкрд░ рд╕рд░рд▓ рдФрд░ рд╕реНрдкрд╖реНрдЯ рджрд┐рдЦрддреА рд╣реИрдВред рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдмрд╣реБрдд рдХрдо CSS рдЪрдпрдирдХрд░реНрддрд╛ рд╣реИрдВ, рдЬреИрд╕реЗ
.title
,
input
,
#app
, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рд▓реЗрдХрд┐рди, рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдврд╝рддрд╛ рд╣реИ, рд╢реИрд▓рд┐рдпрд╛рдБ рдПрдХ рдмреБрд░реЗ рд╕рдкрдиреЗ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИрдВред рдбреЗрд╡рд▓рдкрд░ рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреНрд░рдорд┐рдд рд╣реЛрдиреЗ рд▓рдЧрддрд╛ рд╣реИред рдЙрд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╡рд╣
div#app .list li.item a
рдЬреИрд╕реА рдХреБрдЫ рд▓рд┐рдЦрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд╛рдо рдХреЛ рд░реЛрдХрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕рдорд╛рди рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ, рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рдХреЛ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдзрдХреНрдХрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ - рдЬреЛ рд╢реИрд▓рд┐рдпреЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ? рдФрд░ CSS рд╣реА рдРрд╕реА рдмрдХрд╡рд╛рд╕ рд╣реИ ... рдкрд░рд┐рдгрд╛рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдорд░реНрдерд┐рдд, рднрдпрд╛рдирдХ CSS рдХреА 500 рд▓рд╛рдЗрдиреЗрдВ рд╣реИред
рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдЖрдк рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдкрдврд╝реЗрдВ рдФрд░ рдЕрдкрдиреА рдкрд┐рдЫрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рд╕реЛрдЪреЗрдВ: "рдареАрдХ рд╣реИ, рд╡рд╛рд╣, рдореИрдВ рдпрд╣ рдХреИрд╕реЗ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реВрдВ?"
рд╢рд╛рдпрдж рдЖрдк рдЕрдм рд╕реЛрдЪ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ "рд╕реАрдПрд╕рдПрд╕ рд▓рд┐рдЦрдирд╛" рдХрд╛ рдорддрд▓рдм рд╕реАрдПрд╕рдПрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рдЙрдиреНрд╣реЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ рдЗрд░рд╛рджрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рд╣реИ рдХрд┐ рд╡реЗ рдЕрдЪреНрдЫрд╛ рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдпрд╣ рд╕рдм рд╕рдЪ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реАрдПрд╕рдПрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдХреБрдЫ рдиреБрдХрд╕рд╛рди рд╣реИрдВ:
- рдЕрдХреНрд╕рд░ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдПрдХ рдЙрдмрд╛рдК, рдиреАрд░рд╕, рдХреЗрд▓реЗ рдХреЗ рдбрд┐рдЬрд╛рдЗрди рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рд╣реЛрддреА рд╣реИред
- рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ рдХрдард┐рди рд╣реИ, рдФрд░ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдврд╛рдВрдЪреЗ рд╕реЗ рдкрд░реЗ рд╣реЛред
- рдлреНрд░реЗрдорд╡рд░реНрдХ, рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдзреНрдпрдпрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдФрд░, рдЕрдВрдд рдореЗрдВ, рдЖрдк рдЗрд╕реЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдврд╛рдВрдЪреЗ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдкрдврд╝ рд░рд╣реЗ рд╣реИрдВ? рддреЛ рдЪрд▓рд┐рдП CSS рдХрд╛ рдХрд╛рдо рдХрд░рддреЗ рд╣реИред рдореИрдВ рддреБрд░рдВрдд рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рд╕рд╛рдордЧреНрд░реА рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрдВрджрд░ рдбрд┐рдЬрд╛рдЗрди рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЧреБрдгрд╡рддреНрддрд╛ рд╕реАрдПрд╕рдПрд╕ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬрд┐рд╕реЗ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдПрд╕рд╕реАрдПрд╕рдПрд╕
рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдореИрдВ
рдПрд╕рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ред рдпрд╣ рдПрдХ CSS рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, SCSS CSS рдХрд╛ рд╕реБрдкрд░рд╕реЗрдЯ рд╣реИред рдЗрд╕рдореЗрдВ рдХреБрдЫ рдмрд╣реБрдд рд╣реА рд░реЛрдЪрдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдЪрд░, рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрдорд╛рдг, рдлрд╝рд╛рдЗрд▓ рдЖрдпрд╛рдд, рдорд┐рд╢реНрд░рдгред рд╣рдо SCSS рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗ рдЬрд┐рдирдХрд╛ рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
тЦНPeremennye
SCSS рдореЗрдВ, рдЖрдк рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдореБрдЦреНрдп рд▓рд╛рдн рдЙрдирдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд░рдВрдЧреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИред рдореБрдЦреНрдп рд░рдВрдЧ рдиреАрд▓рд╛ рд╣реИред рдирддреАрдЬрддрди, рдпрд╣ рд░рдВрдЧ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рд╣рд░ рдЬрдЧрд╣ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдЯрди рдХреА
background-color
рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ, рдкреГрд╖реНрда рд╢реАрд░реНрд╖рдХ рдХреА
color
рд╕рдВрдкрддреНрддрд┐ рдореЗрдВ, рдФрд░ рдХрдИ рдЕрдиреНрдп рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдФрд░ рдлрд┐рд░, рдЕрдЪрд╛рдирдХ, рдЖрдк рдиреАрд▓реЗ рдХреЛ рд╣рд░реЗ рд░рдВрдЧ рдореЗрдВ рдмрджрд▓рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдРрд╕рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд╕рднреА рдХреЛрдб, рд╕рднреА рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд╣рд╛рдВ рдкреБрд░рд╛рдиреЗ рд░рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдПрдХ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЗрд╕рдХреЗ рдореВрд▓реНрдп рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣рд╛рдБ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ:
// $primary-color: #0099ff; // h1 { color: $primary-color; }
тЦН рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрдорд╛рдг
SCSS рдиреЗрд╕реНрдЯреЗрдб рдХрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдирд┐рдпрдорд┐рдд рд╕реАрдПрд╕рдПрд╕ рд╣реИ:
h1 { font-size: 5rem; color: blue; } h1 span { color: green; }
рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЗрд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
h1 { font-size: 5rem; color: blue; span { color: green; } }
рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдкрдврд╝рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рд╣реИ рдирд╛? рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдЬрдЯрд┐рд▓ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдордп рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
RagFragmentation рдФрд░ рдЖрдпрд╛рдд
рдЬрдм рдпрд╣ рд╕рд╣рд╛рдпрдХ рд╢реИрд▓рд┐рдпреЛрдВ рдФрд░ рдЙрдирдХреА рдкрдардиреАрдпрддрд╛ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рднреА рдХреЛрдб рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд░рдЦрдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рдПрдХ рд╢реИрд▓реА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдПрдХ рдкреЗрд╢реЗрд╡рд░ рд╕реНрддрд░ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ ... рддреЛ рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИред рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, SCSS рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рд╢реИрд▓реА рдХреЛрдб рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рд╣реИрдВред
рд╢реИрд▓реА рд╡рд┐рд╡рд░рдг рдХреЗ рдЯреБрдХрдбрд╝реЗ рдпреБрдХреНрдд рдлрд╛рдЗрд▓реЗрдВ рдЙрдирдХреЗ рдирд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдЬреЛрдбрд╝рдХрд░ рдмрдирд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ:
_animations.scss
,
_base.scss
,
_variables.scss
, рдФрд░ рдЗрд╕реА рддрд░рд╣ред
рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
@import
рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ:
// _animations.scss @keyframes appear { 0% { opacity: 0; } 100% { opacity: 1; } } // header.scss @import "animations"; h1 { animation: appear 0.5s ease-out; }
рдЖрдкрдХреЛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдХреЛрдб рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реИред рджрд░рдЕрд╕рд▓, рд╣рдо рдЬрд┐рд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрд╕реЗ
_animations.scss
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╣рдо,
header.scss
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ,
@import "animations"
рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЛрдИ рдЧрд▓рддреА рдирд╣реАрдВ рд╣реИред SCSS рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдорд╛рд░реНрдЯ рдкрд░реНрдпрд╛рдкреНрдд рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдХрд┐ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдбреЗрд╡рд▓рдкрд░ рдХрд╛ рдЕрд░реНрде рд╣реИ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ред
рдпрд╣ рд╣рдо рд╕рднреА рдХреЛ рдЪрд░, рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрдорд╛рдг, рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╡рд┐рдЦрдВрдбрди рдФрд░ рдЖрдпрд╛рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
@for
рдореЗрдВ рдЕрдиреНрдп рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдорд┐рдХреНрд╕рд┐рдиреНрд╕, рдЗрдирд╣реЗрд░рд┐рдЯреЗрдВрд╕, рдФрд░ рдЕрдиреНрдп рдирд┐рд░реНрджреЗрд╢ (рдЙрдирдореЗрдВ рд╕реЗ
@for
,
@if
рдФрд░ рдХреБрдЫ рдЕрдиреНрдп рд╣реИрдВ), рд▓реЗрдХрд┐рди рд╣рдо рдпрд╣рд╛рдВ рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред
рдпрджрд┐ рдЖрдк SCSS рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕рдВрдмрдВрдзрд┐рдд
рджрд╕реНрддрд╛рд╡реЗрдЬ рджреЗрдЦреЗрдВ ред
рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдЧрдарди: рдмреАрдИрдПрдо рдкрджреНрдзрддрд┐
рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдХрд┐рддрдиреА рдмрд╛рд░ CSS рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдирд╛рдордХрд░рдг рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред рдирддреАрдЬрддрди, рдореБрдЭреЗ рдРрд╕реЗ рдирд╛рдо рдорд┐рд▓реЗ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдЪрд┐рдд:
.custom-input
,
.custom-input
.page-2
,
.custom-input
.page-2
,
.custom-input
ред
рдЕрдХреНрд╕рд░ рд╣рдо рдХреБрдЫ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рдереЗ, рдФрд░ рдлрд┐рд░, рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ, рдХрдИ рдорд╣реАрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░ рджрд┐рдпрд╛? рдпрд╛, рдФрд░ рдпрд╣ рдмрд╣реБрдд рдмреБрд░рд╛ рд╣реИ, рдЕрдЧрд░ рдХрд┐рд╕реА рдФрд░ рдиреЗ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд┐рдпрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдпрджрд┐ рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рдЕрдиреБрдЪрд┐рдд рдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрд╡реЗрджрди рдХреЗ рдЕрдиреНрдп рднрд╛рдЧреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдордЭрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред
BEM рдкрджреНрдзрддрд┐ (рдмреНрд▓реЙрдХ, рддрддреНрд╡, рд╕рдВрд╢реЛрдзрдХ) рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдШрдЯрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ рдЗрдХрд╛рдИ рдирд╛рдордХрд░рдг рд╕рдореНрдореЗрд▓рди рд╣реИред рдпрд╣ рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рдЖрдкрдХреЛ рдХреЛрдб рдХреА рд╕рдВрд░рдЪрдирд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдЗрд╕реЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИред рдЪрд▓реЛ рдмреНрд▓реЙрдХ, рддрддреНрд╡реЛрдВ рдФрд░ рд╕рдВрд╢реЛрдзрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред
тЦН рдмреНрд▓реЙрдХ
рдмреНрд▓реЙрдХ рдХреЛ рдШрдЯрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдк рд▓реЗрдЧреЛ рдореЗрдВ рдПрдХ рдмрдЪреНрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЗрд▓реЗред рдЗрд╕рд▓рд┐рдП, рдЯрд╛рдЗрдо рдорд╢реАрди рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВред
рдЖрдк рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдШрд░ рдХреИрд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ, рдХрд╣рддреЗ рд╣реИрдВ? рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдПрдХ рдЦрд┐рдбрд╝рдХреА, рдЫрдд, рджрд░рд╡рд╛рдЬреЗ, рджреАрд╡рд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдФрд░, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдпреЗ рд╕рдм рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдХ рд╣реИрдВред рд╡реЗ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВред
рдирд╛рдордХрд░рдг: рдмреНрд▓реЙрдХ рдирд╛рдо -
.block
рдЙрджрд╛рд╣рд░рдг:
.card
,
.form
,
.post
,
.form
.user-navigation
тЦН рддрддреНрд╡
рд▓реЗрдЧреЛ рд╡рд┐рдВрдбреЛ рдХреИрд╕реЗ рдмрдирд╛рдПрдВ? рд╢рд╛рдпрдж, рдХреБрдЫ рдХреНрдпреВрдмреНрд╕ рдлрд╝реНрд░реЗрдо рдХреА рддрд░рд╣ рджрд┐рдЦрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдЗрдирдореЗрдВ рд╕реЗ рдЪрд╛рд░ рдХреНрдпреВрдмреНрд╕ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рд╕реБрдВрджрд░ рдЦрд┐рдбрд╝рдХреА рдорд┐рд▓рддреА рд╣реИред рдпреЗ рддрддреНрд╡ рд╣реИрдВред рд╡реЗ рдмреНрд▓реЙрдХ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рд╣реИрдВ, рдмреНрд▓реЙрдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рдмрд╛рд╣рд░ рдХреЗ рддрддреНрд╡ рдмреЗрдХрд╛рд░ рд╣реИрдВред
рдирд╛рдордХрд░рдг:
+ __ +
-
.block__element
рдЙрджрд╛рд╣рд░рдг:
.post__author
,
.post__date
,
.post__text
тЦН рд╕рдВрд╢реЛрдзрдХ
рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╡рд┐рдВрдбреЛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЗрд╕реЗ рдмрджрд▓рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП - рдПрдХ рдЕрд▓рдЧ рд░рдВрдЧ рдореЗрдВ рдкреЗрдВрдЯ рдХрд░реЗрдВред рдЖрдзрд╛рд░ рдмреНрд▓реЙрдХ рдпрд╛ рддрддреНрд╡реЛрдВ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрджрд▓рд╛рд╡ рдХреЛ рд╕рдВрд╢реЛрдзрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпреЗ рдмреНрд▓реЙрдХ рдпрд╛ рддрддреНрд╡реЛрдВ рдХреЗ рдЭрдВрдбреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдирдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░, рдЙрдкрд╕реНрдерд┐рддрд┐ рдФрд░ рдЗрддрдиреЗ рдкрд░ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдирд╛рдордХрд░рдг:
+ -- +
-
.block__element--modifier
,
.block--modifier
рдЙрджрд╛рд╣рд░рдг:
.post--important
,
.post__btn--disabled
тЦН рдиреЛрдЯреНрд╕
- рдмреАрдИрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдирд╛рдо рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдХреЛрдИ рдЖрдИрдбреА рдпрд╛ рдЯреИрдЧ рдирд╣реАрдВ - рд╕рд┐рд░реНрдл рдХрдХреНрд╖рд╛рдПрдВред
- рдмреНрд▓реЙрдХ рдпрд╛ рддрддреНрд╡реЛрдВ рдХреЛ рдЕрдиреНрдп рдмреНрд▓реЙрдХреЛрдВ рдпрд╛ рддрддреНрд╡реЛрдВ рдореЗрдВ рдиреЗрд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдмрдЯрди рдХреЛ рдлрд╝реАрд▓реНрдб рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЗрд╕реЗ рд╢реАрд░реНрд╖рдХ рдХреЗ рдиреАрдЪреЗ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЕрдиреНрдпрдерд╛ рдмрдЯрди рд╢реАрд░реНрд╖рдХ рд╕реЗ рд╕рдВрдмрджреНрдз рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣реЗрд▓реНрдкрд░ рд╡рд░реНрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
- BEM рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп, HTML рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЕрдзрд┐рднрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╢реБрд▓реНрдХ рд╣реИ рдЬреЛ BEM рд╣рдореЗрдВ рджреЗрддрд╛ рд╣реИред
тЦНUprazhnenie
рдпрд╣рд╛рдБ рдПрдХ рд╡реНрдпрд╛рдпрд╛рдо рд╣реИред рдЙрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рджреЗрдЦреЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рдпрд╛ рдЙрди рд▓реЛрдЧреЛрдВ рдкрд░ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЕрдХреНрд╕рд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдХрд┐ рдЙрди рдкрд░ рдХреНрдпрд╛ рдмреНрд▓реЙрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдПрдХ рддрддреНрд╡ рдХреНрдпрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╕рдВрд╢реЛрдзрдХ рдХреНрдпрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ Google рд╕реНрдЯреЛрд░ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рдореБрдЭреЗ рдХреНрдпрд╛ рдорд┐рд▓рд╛ред
рд╕рд╛рдЗрдЯ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрдЕрдм рдЖрдкрдХреА рдмрд╛рд░реА рд╣реИред рд╕рд╛рдЗрдЯ рдХреЛ рджреЗрдЦреЗрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рд▓реЗрдиреЗ, рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рдХреБрдЫ рдирдпрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
тЦН рдЙрджрд╛рд╣рд░рдг
рдпрд╣рд╛рдВ рдХреЛрдбрдкреЗрди рджреНрд╡рд╛рд░рд╛ рддреИрдпрд╛рд░
рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ
рдЬреЛ рдмреАрдИрдПрдо рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд╣рдо рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмреНрд▓реЙрдЧ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рди рдХреА рддрд░рд╣ рдХреБрдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП HTML рд╣реИред
<div class="post"> <span class="post__author">Thomas</span> <span class="post__date">3 minutes ago</span> <p class="post__text">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Laboriosam sit voluptatem aut quis quisquam veniam delectus sequi maxime ullam, inventore blanditiis quia commodi maiores fuga, facere quaerat doloremque in. Nisi!</p> </div> <div class="post mt-large post--important"> <span class="post__author">Thomas</span> <span class="post__date">2 hours ago</span> <p class="post__text">Voluptatem incidunt autem consequatur neque vitae aliquam, adipisci voluptatum. Ipsum excepturi dolores exercitationem rem ab similique consequatur nesciunt, tempora aut vel unde.</p> </div>
рдпрд╣рд╛рдБ SCSS рд╢реИрд▓рд┐рдпрд╛рдБ рд╣реИрдВ:
.post { display: inline-block; padding: 1rem; background-color: #ccc; border: 1px solid #222; border-radius: 5px; &--important { background-color: yellow; } &__author { font-size: 1.2rem; font-weight: bold; color: blue; } &__date { float: right; } &__text { line-height: 2rem; font-size: 1.3rem; } } .mt-large { margin-top: 3rem; }
рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рдХреНрдпрд╛ рд╣реБрдЖред
рдмреАрдИрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рдкреНрд░рдХрд╛рд╢рди" рдмрдирд╛рдирд╛рдПрдХ рдЕрдиреНрдп
рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдпрд╣рд╛рдВ, BEM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо рдмрдЯрди рдмрдирд╛рддреЗ рд╣реИрдВред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП HTML рд╣реИред
<div> <button class="btn"> Click me </button> <button class="btn btn--danger"> Danger </button> <button class="btn btn--success"> Success </button> <button class="btn btn--small"> Small </button> <button class="btn btn--big"> Big </button> <button class="btn btn--border"> Border </button> </div>
рдпрд╣рд╛рдБ SCSS рд╢реИрд▓рд┐рдпрд╛рдБ рд╣реИрдВред
.colors { font-size: 1.5rem; font-family: sans-serif; } .btn { background-color: #FF6B93; color: #fff; text-transform: uppercase; padding: 1.5rem 2.5rem; border-radius: 4px; transition: all .2s; font-size: 1.3rem; border: none; letter-spacing: 2px; cursor: pointer; &:hover { background-color: #D15879; } &:focus { outline: none; } &--danger { background-color: #FF3B1A; &:hover { background-color: #D43116; } } &--success { background-color: #00D123; &:hover { background-color: #00AB1D; } } &--small { padding: 1rem 2rem; font-size: 1rem; } &--big { padding: 1.8rem 4.5rem; font-size: 1.7rem; } &--border { background-color: #fff; color: #FF6B93; border: 1px solid #FF6B93; &:hover { background-color: #FF6B93; color: #fff; } } }
рдФрд░ рдпрд╣рд╛рдБ рдкрд░рд┐рдгрд╛рдо рд╣реИред
BEM рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдмрдЯрди рдбрд┐рдЬрд╛рдЗрдирд╕реАрдПрд╕рдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдЖрдпреЛрдЬрди: 7-1 рдЯреЗрдореНрдкрд▓реЗрдЯ
рдЪрд▓реЛ CSS рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реА рдмрд╛рддрдЪреАрдд рдХреЗ рдЗрд╕ рд╣рд┐рд╕реНрд╕реЗ рд╕реЗ рдЖрдк рдЬреЛ рд╕реАрдЦрддреЗ рд╣реИрдВ, рд╡рд╣ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдЙрдЪрд┐рдд рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, рддреБрд░рдВрдд рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рдвреВрдВрдвреЗрдВ рдЬрд┐рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╕рдм рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ "7-1" рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╢рд╛рдпрдж рдЕрдм рдпрд╣ рдЖрдкрдХреЛ рдкреНрд░рддреАрдд рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХрд┐рд╕реА рддрд░рд╣ рдмрд╣реБрдд рдЕрдЬреАрдм рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣рд╛рдВ рдХреБрдЫ рднреА рдЕрдЬреАрдм рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рджреЛ рд╕рд░рд▓ рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:
- SCSS рдЕрдВрд╢реЛрдВ рд╡рд╛рд▓реА рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ 7 рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдЗрди рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдореВрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рдПрдХ рдлрд╝рд╛рдЗрд▓
main.scss
рдореЗрдВ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рдпреЗ рд╕рднреА рдлрд╝реЛрд▓реНрдбрд░ рд╕реНрдерд┐рдд рд╣реИрдВред
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдирд╛рдо, "7 рдлрд╝реЛрд▓реНрдбрд░ - 1 рдлрд╝рд╛рдЗрд▓" рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдЗрд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред
тЦН тЦН рдлреЛрд▓реНрдбрд░
рдпрд╣рд╛рдБ рдкреНрд░рд╢реНрди рдореЗрдВ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рд╣реИрдВ:
base
: рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЖрдкрдХреЛ рд╕рднреА рдЬрдЧрд╣ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, "рдЯреЗрдореНрдкрд▓реЗрдЯ" рдХреЛрдбред рдпрд╣рд╛рдВ "рдЯреЗрдореНрдкрд▓реЗрдЯ" рдХреЛрдб рд╕реЗ рд╣рдорд╛рд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╕рдордп рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдЯрд╛рдЗрдкреЛрдЧреНрд░рд╛рдлрд┐рдХ рдирд┐рдпрдо, рдПрдирд┐рдореЗрд╢рди, рдпреВрдЯрд┐рд▓рд┐рдЯреАрдЬ (рдпрд╛рдиреА, margin-right-large
, text-center
рдЬреИрд╕реА рдХрдХреНрд╖рд╛рдПрдВ), рдФрд░ рдЗрд╕реА рддрд░рд╣редcomponents
: рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдирд╛рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рдо рдкреГрд╖реНрдареЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпреЗ рдмрдЯрди, рдлреЙрд░реНрдо, рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реНрд▓рд╛рдЗрдбрд░реНрд╕, рдкреЙрдк-рдЕрдк рдФрд░ рдЗрддрдиреЗ рдкрд░ рд╣реИрдВредlayout
: рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреЗрдЬ рд▓реЗрдЖрдЙрдЯ рддрддреНрд╡реЛрдВ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдкреГрд╖реНрда рдХрд╛ рд╢реАрд░реНрд╖рдХ рдФрд░ рдкрд╛рдж рд▓реЗрдЦ, рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреНрд╖реЗрддреНрд░, рдкреГрд╖реНрда рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЦрдВрдб, рдЧреНрд░рд┐рдб, рдФрд░ рдЗрд╕реА рддрд░рд╣ рд╣реИредpages
: рдХрднреА-рдХрднреА рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдРрд╕реЗ рдкреГрд╖реНрдареЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рдирдХреА рдЕрдкрдиреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╢реИрд▓реА рд╣реЛрддреА рд╣реИ, рдЬреЛ рдЕрдиреНрдп рдкреГрд╖реНрдареЛрдВ рдХреА рд╢реИрд▓реА рд╕реЗ рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИред рдРрд╕реЗ рд╡рд┐рд╢реЗрд╖ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд▓рд┐рдП рд╢реИрд▓реА рд╡рд┐рд╡рд░рдг рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЖрддреЗ рд╣реИрдВредthemes
: рдпрджрд┐ рдХрд┐рд╕реА рд╡реЗрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдереАрдо (рдЬреИрд╕реЗ рдХрд┐ "рдбрд╛рд░реНрдХ рдореЛрдб", рдпрд╛ "рдПрдбрдорд┐рди") рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИ, рддреЛ рдЙрдирдХреЗ рд▓рд┐рдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдпрд╣рд╛рдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПредabstracts
: рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╕рд╣рд╛рдпрдХ рдЪреАрдЬреЗрдВ рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдорд┐рд▓рддреА рд╣реИрдВ - рдлрд╝рдВрдХреНрд╢рди, рдЪрд░, рдорд┐рд╢реНрд░рдгредvendors
: рдмрд╛рд╣рд░реА рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рджреБрд░реНрд▓рдн рд╕рд╛рдЗрдЯред рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдРрд╕реА рд╢реИрд▓рд┐рдпрд╛рдБ рд╣реИрдВ рдЬреЛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╕рд╛рдЗрдЯ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдмрдирд╛рдИ рдЧрдИ рд╣реИрдВред рдпрд╣рд╛рдБ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдлрд╝реЙрдиреНрдЯ рд╡рд┐рд╕реНрдордпрдХрд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ, рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рд╢реИрд▓рд┐рдпреЛрдВ, рдФрд░ рдЗрд╕ рддрд░рд╣ рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВред
IleFile main.scss
рдпрд╣ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд рд╕рд╛рдд рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдП рдЧрдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рднреА рдЯреБрдХрдбрд╝реЗ рдЖрдпрд╛рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:
@import abstracts/variables; @import abstracts/functions; @import base/reset; @import base/typography; @import base/utilities; @import components/button; @import components/form; @import components/user-navigation; @import layout/header; @import layout/footer;
рдореИрдВ рдЗрд╕ рддрдереНрдп рд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рдХрд┐ рд╕рд╛рдд рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХрд╛ рдпрд╣ рдкреВрд░рд╛ рдбрд┐рдЬрд╛рдЗрди рдХрд╛рдлреА рдмрдбрд╝рд╛ рджрд┐рдЦрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЫреЛрдЯреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рд╕рдВрд╕реНрдХрд░рдг "7-1" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреБрдЫ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рддреЛ, рдпрд╣рд╛рдВ рдЖрдк
link
рдЯреИрдЧ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯреНрд╕ рдХреЗ рд▓рд┐рдВрдХ рд░рдЦрдХрд░
vendors
рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдордирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк
themes
рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рдмрд┐рдирд╛ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐, рд╢рд╛рдпрдж, рдереАрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ рдЕрдВрдд рдореЗрдВ, рдЖрдк
pages
рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдРрд╕реЗ рдкреГрд╖реНрда рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рдЬрд┐рдирдХреА рд╢реИрд▓реА рд╕рд╛рдорд╛рдиреНрдп рд╢реИрд▓реА рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИред рдирддреАрдЬрддрди, рд╕рд╛рдд рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдореЗрдВ рд╕реЗ, рдХреЗрд╡рд▓ рдЪрд╛рд░ рд╣реА рд░рд╣рддреЗ рд╣реИрдВред
рдЖрдЧреЗ, рдПрдХ рдЫреЛрдЯреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд░рддреЗ рд╣реБрдП, рдЖрдк рджреЛ рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
- рдпрджрд┐ рдЖрдк "7-1" рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдЕрд╡рд╢реЗрд╖реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдлрд╝реЛрд▓реНрдбрд░
abstracts
, components
, layout
рдФрд░ base
рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред - рдпрджрд┐ рдЖрдк рдПрдХ рдмрдбрд╝реЗ рдлрд╝реЛрд▓реНрдбрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рд╢реИрд▓реА рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЗ рд╕рд╛рде рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ, рд╕рд╛рде рдореЗрдВ
main.scss
рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде, рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЖрддреА рд╣реИрдВред рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:
sass/ _animations.scss _base.scss _buttons.scss _header.scss ... _variables.scss main.scss
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдЪреБрдирдирд╛ рдЖрдкрдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ, рдпрджрд┐ рдЖрдк SCSS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реИрдВ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рддрд░рд╣ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдкреНрд░рд╢реНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рд╡рд╛рд▓ рд╣реИ рдЬреЛ рд╣рдореЗрдВ SCSS рдХреЛ рд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реА рдмрд╛рддрдЪреАрдд рдХреЗ рдЕрдВрддрд┐рдо рдЪрд░рдг рдореЗрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИред
CSS рдХреЛ SCSS рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛
SCSS рдХреЛрдб рдХреЛ CSS рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ
Node.js рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдФрд░
NPM (рдпрд╛
рдпрд╛рд░реНрди ) рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рд╣рдо
node-sass
рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рд╣рдореЗрдВ
.css
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ
.css
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЙрдкрдХрд░рдг рд╣реИ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЕрд░реНрдерд╛рддреН,
node-sass
рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
node-sass <input> <output> [options]
рдХрдИ рд╡рд┐рдХрд▓реНрдк рдпрд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рд╣рдо рджреЛ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗ:
-w
рд╡рд┐рдХрд▓реНрдк рдЖрдкрдХреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдпрд╛ рдлрд╝рд╛рдЗрд▓ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, node-sass
рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦреЗрдЧрд╛, рдФрд░ рдЬрдм рд╡реЗ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реИред- рд╡рд┐рдХрд▓реНрдк
--output-style
рдЖрдЙрдЯрдкреБрдЯ рд╕реАрдПрд╕рдПрд╕ рдлрд╝рд╛рдЗрд▓ рдХреА --output-style
рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдХрдИ рд╡рд┐рдХрд▓реНрдк рдпрд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ: nested
, expanded
, compact
, compressed
ред рд╣рдо рдПрдХ рд╕рдорд╛рдкреНрдд рд╕реАрдПрд╕рдПрд╕ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
рдпрджрд┐ рдЖрдк рдПрдХ рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рд╡реНрдпрдХреНрддрд┐ рд╣реИрдВ (рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛ рдХреЗрд╡рд▓ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд╛рдн рдХреЗ рд▓рд┐рдП рд╣реИ), рддреЛ рдЖрдк рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛
node-sass
рд▓рд┐рдП
рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреЛ рджреЗрдЦрдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦреЗрдВрдЧреЗред
рдЗрд╕рд▓рд┐рдП, рд╣рдордиреЗ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЕрдм рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЪреАрдЬ рдмрдиреА рд╣реБрдИ рд╣реИред SCSS рдХреЛ CSS рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрди рдЪрд░рдгреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдБ рдФрд░ рдЙрд╕ рдкрд░ рдЬрд╛рдПрдБ:
mkdir my-app && cd my-app
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ:
npm init
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ
node-sass
рдкреИрдХреЗрдЬ рдЬреЛрдбрд╝реЗрдВ:
npm install node-sass --save-dev
рдПрдХ
index.html
рдлрд╝рд╛рдЗрд▓, рд╢реИрд▓рд┐рдпрд╛рдБ рдлрд╝реЛрд▓реНрдбрд░,
main.scss
рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:
touch index.html mkdir -p sass/{abstracts,base,components,layout} css cd sass && touch main.scss
package.json
рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВред
package.json
рдлрд╝рд╛рдЗрд▓:
{ ... "scripts": { "watch": "node-sass sass/main.scss css/style.css -w", "build": "node-sass sass/main.scss css/style.css --output-style compressed" }, ... }
index.html
рдлрд╝рд╛рдЗрд▓ рдХреЗ
head
рдЯреИрдЧ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд CSS рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдВрдХ рдХреЛ рдЬреЛрдбрд╝реЗрдВ:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <link rel="stylesheet" href="css/style.css"> <title>My app</title> </head> <body> <h1 class="heading">My app</h1> </body> </html>
рд╡рд╣ рд╕рдм рд╣реИред рдЕрдм рдЬрдм рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ
npm run watch
рдФрд░ рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ
index.html
рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВред CSS рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
npm run build
ред
рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдкрдпреЛрдЧрд┐рддрд╛рдПрдБ
тЦН рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдкреЗрдЬ рдкреБрдирдГ рд▓реЛрдб
рдЖрдк рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдкреЗрдЬ рд░реАрд▓реЛрдб рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣
index.html
рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреБрдирдГ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ:
live-server
рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ):
npm install -g live-server
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░,
npm-run-all
рдкреИрдХреЗрдЬ рдЬреЛрдбрд╝реЗрдВ, рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛:
npm install npm-run-all --save-dev
package.json
рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВред
package.json
:
{ ... "scripts": { "start": "npm-run-all --parallel liveserver watch", "liveserver": "live-server", "watch": "node-sass sass/main.scss css/style.css -w", }, ... }
рдЕрдм,
npm run start
рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдкреГрд╖реНрда рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреБрдирдГ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдЗрд╕рдореЗрдВ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рддреБрд░рдВрдд рджреЗрдЦреЗрдВрдЧреЗред
тЦН рдСрдЯреЛрдкреНрд░реЗрдлрд┐рдХреНрд╕рд░ рдкреИрдХреЗрдЬ
рдЗрд╕ рд╕реНрддрд░ рдкрд░, рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЕрдиреБрдХреВрд▓рд┐рдд рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рд╣реИ, рдЬреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИред рдЕрдм рдЪрд▓реЛ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ,
рдСрдЯреЛрдкреНрд░рд┐рдлрд╝рд░ рдкреИрдХреЗрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рдпрд╣ рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ (рд╣рдо рдПрдХ рдкреЛрд╕реНрдЯрд╕реНрдХреЙрд▓реНрд╕ рдкреНрд▓рдЧрдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ) рдЬреЛ рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░
рдХреИрди рдЖрдИ рдпреВрдЬрд╝ рдХреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдореЛрдВ рдХреЗ рд▓рд┐рдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛ рдЙрдкрд╕рд░реНрдЧ рдЬреЛрдбрд╝рддрд╛ рд╣реИред
рд╕рд╛рдЗрдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рджреМрд░рд╛рди, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреБрдЫ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдХреНрд░реЙрд╕-рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рд╕рд╣рд┐рдд рдХрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рд╣реИред
рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд╕рд╛рде рдХреЛрдб рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
-webkit-animation-name: myAnimation; -moz-animation-name: myAnimation; -ms-animation-name: myAnimation;
рдпрд╣ рджреЗрдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдмрд╣реБрдд рдердХрд╛рдК рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЬрдЯрд┐рд▓ рдХрд┐рдП рдмрд┐рдирд╛, рд╡рд┐рднрд┐рдиреНрди рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рд╕реАрдПрд╕рдПрд╕-рдХреЛрдб рдХреА рд╕рдВрдЧрддрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо
autoprefixer
рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд░рдг рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗ:
- рд╣рдо рд╕рднреА SCSS рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдореБрдЦреНрдп CSS рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
- рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХреЛ
autoprefixer
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ autoprefixer
ред - рдЗрд╕ CSS рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░реЗрдВред
рдпрд╣, рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд╛ рдЕрдВрддрд┐рдо рдЪрд░рдг рд╣реИред рддреЛ рдпрд╣рд╛рдБ рд╣реИ рдХрд┐ рдЖрдк
autoprefixer
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рджреЛ рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдЬреЛрдбрд╝реЗрдВ -
postcss-cli
autoprefixer
рдФрд░
autoprefixer
:
npm install autoprefixer postcss-cli --save-dev
рдирд┐рдореНрди рдХреЛрдб рдХреЛ
package.json
рдЬреЛрдбрд╝реЗрдВ рдФрд░
build
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ:
{ ... "scripts": { "start": "npm-run-all --parallel liveserver watch", "liveserver": "live-server", "watch": "node-sass sass/main.scss css/style.css -w", "compile": "node-sass sass/main.scss css/style.css", "prefix": "postcss css/style.css --use autoprefixer -o css/style.css", "compress": "node-sass css/style.css css/style.css --output-style compressed", "build": "npm-run-all compile prefix compress" ... }
npm run build
, CSS-, .
, , . тАФ
, ,
.
, ,
рдкрд░рд┐рдгрд╛рдо
, CSS, , , CSS-, , .
рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! -?