CSS рдореЗрдВ calc()
рд╕рд░рд▓ рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:.main-content {
height: calc(100vh - 80px);
}
рдпрд╣рд╛рдВcalc()
рдЖрдк рд╕реАрдПрд╕рдПрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ред рд▓реЗрдЦ рдХрд╛ рд▓реЗрдЦрдХ, рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдЖрдЬ рд╣рдо рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдХрд╛рд░реНрдп рд╣реИред
Calc () рдлрд╝рдВрдХреНрд╢рди рдФрд░ CSS рдЧреБрдг рдорд╛рди
рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдЬрдЧрд╣ рдЖрдк рдлрд╝рдВрдХреНрд╢рди calc()
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рдеред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ, рдЬрд┐рд╕рдореЗрдВ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рд╡рд┐рднрд┐рдиреНрди рдЧреБрдгреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред.el {
font-size: calc(3vw + 2px);
width: calc(100% - 20px);
height: calc(100vh - 20px);
padding: calc(1vw + 5px);
}
calc()
рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрд▓рдЧ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:.el {
margin: 10px calc(2vw + 5px);
border-radius: 15px calc(15px / 3) 4px 2px;
transition: transform calc(1s - 120ms);
}
рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдХрд┐рд╕реА рдЕрдиреНрдп рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рднреА рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ! рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ рдЗрд╕рдХрд╛ calc()
рдЙрдкрдпреЛрдЧ рдврд╛рд▓ рдХреЗ рд░рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:.el {
background: #1E88E5 linear-gradient(
to bottom,
#1E88E5,
#1E88E5 calc(50% - 10px),
#3949AB calc(50% + 10px),
#3949AB
);
}
рдХреИрд▓реНрдХ () рдлрд╝рдВрдХреНрд╢рди рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рд╣реИред
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд╣рдо calc()
рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ (рд╡реЗ рдЗрд╕ рддрдереНрдп рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ рдХрд┐ рдХрднреА-рдХрднреА рдорд╛рдк рдХреА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ)ред рдЕрдм рд╣рдо рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рди рдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЗ рд╕рд╛рдеред.el {
counter-reset: calc("My " + "counter");
}
.el::before {
content: calc("Candyman " * 3);
}
рдорд╛рдк рдХреА рдХрдИ рдЗрдХрд╛рдЗрдпреЛрдВ рдХрд┐ рддрддреНрд╡реЛрдВ рдФрд░ рдЙрдирдХреЗ рднрд╛рдЧреЛрдВ рдХреЗ рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: px
, %
, em
, rem
, in
, mm
, cm
, pt
, pc
, ex
, ch
, vh
, vw
, vmin
, vmax
ред рдЗрди рд╕рднреА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ calc()
редрдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдирдВрдмрд░реЛрдВ рдХреЗ рд╕рд╛рде рднреА рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ:line-height: calc(1.2 * 1.2);
рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЛрдгреЛрдВ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:transform: rotate(calc(10deg * 5));
рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдЗрд╕рдореЗрдВ рдЙрддреНрддреАрд░реНрдг рдХреА рдЧрдИ рдЧрдгрдирд╛ рдореЗрдВ рдХреЛрдИ рдЧрдгрдирд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ:.el {
width: calc(20px);
}
рдореАрдбрд┐рдпрд╛ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ Calc () рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдпрджреНрдпрдкрд┐ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди CSS рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореАрдбрд┐рдпрд╛ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:@media (max-width: 40rem) {
}
@media (min-width: calc(40rem + 1px)) {
}
рдпрджрд┐ рдПрдХ рдмрд╛рд░ рдРрд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛рд░реНрдп рд╕рд┐рджреНрдз рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╛рд░рд╕реНрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдирдиреНрдп рдореАрдбрд┐рдпрд╛ рдХреНрд╡реЗрд░реА рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдЬреЛ рдмрд╣реБрдд рддрд╛рд░реНрдХрд┐рдХ рджрд┐рдЦрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рджрд┐рдЦрд╛рдП рдЧрдП рд╣реИрдВ)редрдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдорд╛рдк рдХреА рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реНрд╡реАрдХрд╛рд░реНрдпрддрд╛ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдореВрд▓реНрдпрд╡рд╛рди рдЕрд╡рд╕рд░ рд╣реИ calc()
ред рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд╕рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдБ, рдмрд╕ рдЕрдкрдирд╛ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рдорд╛рдк рдХреА рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ:
width: calc(100% - 20px);
рдпрд╣ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрдврд╝рддреА рд╣реИ: "рдЪреМрдбрд╝рд╛рдИ рдЙрд╕ рддрддреНрд╡ рдХреА рдЪреМрдбрд╝рд╛рдИ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ 20 рдкрд┐рдХреНрд╕реЗрд▓ рдШрдЯрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред"рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЬрд╣рд╛рдВ рддрддреНрд╡ рдХреА рдЪреМрдбрд╝рд╛рдИ рдмрджрд▓ рд╕рдХрддреА рд╣реИ, рдкрд┐рдХреНрд╕рд▓ рдореЗрдВ рд╡реНрдпрдХреНрдд рдХреЗрд╡рд▓ рд╕рдВрдХреЗрддрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рдореВрд▓реНрдп рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрднрд╡ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЖрдк calc()
Sass рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреЙрд▓реАрдлрд╝рд┐рд▓ рдЬреИрд╕реА рдЪреАрдЬрд╝ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рдВ, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ calc()
рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ ред рдпрд╣рд╛рдБ рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдЧрдгрдирд╛, рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрдд рдореВрд▓реНрдп рдорд┐рд╢реНрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ (рдкреГрд╖реНрда рдХреЗ "рдирд┐рд╖реНрдкрд╛рджрди" рдХреЗ рджреМрд░рд╛рди) рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрд░реНрдерд╛рддреН, рдРрд╕реА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдореБрдЦреНрдп рдореВрд▓реНрдп рд╣реИ calc()
редрдпрд╣рд╛рдВ рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрдд рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдФрд░ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ:transform: rotate(calc(1turn + 45deg));
animation-delay: calc(1s + 15ms);
рдЖрдк рд╢рд╛рдпрдж рдЗрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЙрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рдорд┐рд▓рд╛рддреЗ рд╣реИрдВ рдЬрд┐рдирдХреА рдЗрдХрд╛рдЗрдпрд╛рдБ рдЙрд╕ рдЪреАрдЬрд╝ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ рдЬреЛ рдЙрд╕ рд╕рдордп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ рдЬрдм рдкреГрд╖реНрда рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реЛрддрд╛ рд╣реИредрдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд░ рдЧрдгрдирд╛ рдХреЗ рд╕рд╛рде рдХреИрд▓реНрдХ () рдХреА рддреБрд▓рдирд╛
рд╣рдордиреЗ рдЕрднреА рдХрд╣рд╛ рдХрд┐ рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рд╕реБрд╡рд┐рдзрд╛ calc()
рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЙрддреНрддрд░рджрд╛рдпреА рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕реЗ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдорд┐рд▓рддреА рд╣реИрдВ рдЬреЛ рдХреНрд╖рдорддрд╛рдУрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИрдВ calc()
ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реИрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдпреЛрдВ рдХреА рдЧрдгрдирд╛ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:$padding: 1rem;
.el[data-padding="extra"] {
padding: $padding + 2rem; // 3rem;
margin-bottom: $padding * 2; // 2rem;
}
рдпрд╣рд╛рдВ, рдорд╛рдк рдХреА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реБрдП рдЧрдгрдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдпрд╣рд╛рдВ рдЖрдк рдорд╛рдк рдХреА рд╕рдорд╛рди рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрдд рдХреА рдЧрдИ рдорд╛рддреНрд░рд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдЙрди рдорд╛рдиреЛрдВ рд╕реЗ рдХреБрдЫ рдорд╛рдиреЛрдВ рдХреЛ рдЧреБрдгрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреА рдЗрдХрд╛рдЗрдпрд╛рдВ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИрдВред рд▓реЗрдХрд┐рди рдорд╛рдк рдХреА рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрдд рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдЧрдгрдирд╛ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред рдкреНрд░рддрд┐рдмрдВрдз рдЬреИрд╕реА рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реА рдкрд╛рдмрдВрджрд┐рдпрд╛рдВ рдРрд╕реА рдЧрдгрдирд╛рдУрдВ рдкрд░ рд▓рдЧрд╛рдИ рдЬрд╛рддреА рд╣реИрдВ calc()
(рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реЗ рд╕рдВрдЦреНрдпрд╛рдПрдБ рдЬрд┐рдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреБрдЫ рдЧреБрдгрд╛ рдпрд╛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)редрд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдЕрд░реНрде рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░рдирд╛
рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдЙрди рдЕрд╡рд╕рд░реЛрдВ рдХрд╛ рд▓рд╛рдн рдирд╣реАрдВ рдЙрдард╛рддреЗ рд╣реИрдВ рдЬреЛ рдХреЗрд╡рд▓ рдорджрдж рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ calc()
, рддреЛ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реАрдПрд╕рдПрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдореВрд▓реНрдпреЛрдВ рдХреЗ рдЕрд░реНрде рдХреЛ рдкреНрд░рдХрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдк рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдореВрд▓реНрдп рддрддреНрд╡ рдХреА рдЪреМрдбрд╝рд╛рдИ рдХрд╛ 1/7 рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:.el {
width: calc(100% / 7);
width: 14.2857142857%;
}
рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рд╕реНрд╡-рд╕реНрдЯрд╛рдЗрд▓ рд╕реАрдПрд╕рдПрд╕-рдПрдкреАрдЖрдИ рдХреА рддрд░рд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:[data-columns="7"] .col { width: calc(100% / 7); }
[data-columns="6"] .col { width: calc(100% / 6); }
[data-columns="5"] .col { width: calc(100% / 5); }
[data-columns="4"] .col { width: calc(100% / 4); }
[data-columns="3"] .col { width: calc(100% / 3); }
[data-columns="2"] .col { width: calc(100% / 2); }
рдХреИрд▓реНрдХ рдХреЗ рдЧрдгрд┐рддреАрдп рд╕рдВрдЪрд╛рд▓рдХ () рдХрд╛рд░реНрдп
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдорджрдж рд╕реЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ calc()
рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ +
, -
, *
рдФрд░ /
ред рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВредрдЬреЛрдбрд╝рддреЗ рд╕рдордп ( +
) рдФрд░ рдШрдЯрд╛рдирд╛ ( -
), рдЖрдкрдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рд╕рд╛рде рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП.el {
margin: calc(10px + 10px);
margin: calc(10px + 5);
}
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЧрд▓рдд рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рддрдереНрдп рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдШреЛрд╖рдгрд╛ рднреА рдЧрд▓рдд рд╣реЛ рдЬрд╛рддреА рд╣реИредрд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╕рдордп ( /
), рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдорд╛рдк рдХреА рдЗрдХрд╛рдИ рдХреЛ рджреВрд╕рд░реЗ рдирдВрдмрд░ рдкрд░ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП.el {
margin: calc(30px / 3);
margin: calc(30px / 10px);
margin: calc(30px / 0);
}
рдЧреБрдгрд╛ рдХрд░рддреЗ рд╕рдордп ( *
), рд╕рдВрдЦреНрдпрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдореЗрдВ рдорд╛рдк рдХреА рдПрдХ рдЗрдХрд╛рдИ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:.el {
margin: calc(10px * 3);
margin: calc(3 * 10px);
margin: calc(30px * 3px);
}
рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдорд╣рддреНрд╡
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕реНрдерд╛рди рдЬреЛрдбрд╝ рдФрд░ рдШрдЯрд╛рд╡ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ:.el {
font-size: calc(3vw + 2px);
font-size: calc(3vw+2px);
font-size: calc(3vw - 2px);
font-size: calc(3vw-2px);
}
рдпрд╣рд╛рдВ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреИрд╕реЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ calc(5vw тАФ -5px)
) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдХрд╛рдлреА рд╕рдВрднрд╡ рд╣реИ , рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд┐рд╕рдореЗрдВ рди рдХреЗрд╡рд▓ рд╕реНрдерд╛рди рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рднреА рдЙрдкрдпреЛрдЧреА рд╣реИрдВредрдЯреИрдм рдПрдЯрдХрд┐рдВрд╕ рдиреЗ рдореБрдЭреЗ рдмрддрд╛рдпрд╛ рдХрд┐ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдФрд░ рдШрдЯрд╛рд╡ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рдЦрд╝рд╛рд╕рд┐рдпрддред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭрд╛ рд╣реИ, рд▓реЗрдХрд┐рди, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рд░реНрд╕рд░ рдорд╛рдк рдХреА рдПрдХ рдЗрдХрд╛рдИ рдХреЗ рд╕рд╛рде 2px-3px
рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред2
px-3px
ред рдФрд░ рдХрд┐рд╕реА рдХреЛ рднреА рдорд╛рдк рдХреА рдРрд╕реА рдЕрдЬреАрдм рдЗрдХрд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдЕрддрд┐рд░рд┐рдХреНрдд рдСрдкрд░реЗрдЯрд░ рдХреЗ рд╕рд╛рде рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкрд╛рд░реНрд╕рд░ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреБрдХреНрдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рдСрдкрд░реЗрдЯрд░ рдХреЛ рд▓реЗ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдХрд╕реНрдЯрдо рдЧреБрдгреЛрдВ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ --
, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИредрдЬрдм рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рдЖрд╕рдкрд╛рд╕ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЛ рдЧреБрдгрд╛ рдФрд░ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдк рдХреЛрдб рдХреА рдкрдардиреАрдпрддрд╛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд╕рд╛рде рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рднреВрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдФрд░ рдШрдЯрд╛рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рджрд░реНрдЬ рдХрд░рддреЗ рд╕рдордпредрд░рд┐рдХреНрддрд┐рдпрд╛рдБ рдЬреЛ calc()
рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕реЗ рдЕрд▓рдЧ рдХреЛрд╖реНрдардХ рд╣реИрдВ, рдХреЛрдИ рднреВрдорд┐рдХрд╛ рдирд╣реАрдВ рдирд┐рднрд╛рддреА рд╣реИрдВред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдПрдХ рдирдИ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд▓реЗ рдЬрд╛рдХрд░ рднреА рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:.el {
width: calc(
100% / 3
);
}
рд╕рдЪ рд╣реИ, рдЖрдкрдХреЛ рдпрд╣рд╛рдВ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд╛рдо calc
рдФрд░ ( рдкрд╣рд▓реЗ рдЦреЛрд▓рдиреЗ рд╡рд╛рд▓реЗ рдмреНрд░реИрдХреЗрдЯ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:.el {
width: calc (100% / 3);
}
рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрдорд╛рдг: рдХреИрд▓реНрдХ (рдХреИрд▓реНрдХ ())
рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп calc()
, рдЖрдк рдиреЗрд╕реНрдЯреЗрдб рдХрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдмрд┐рдирд╛ рдмреНрд░реИрдХреЗрдЯ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рдорд╛рди рд╣реИ calc
:.el {
width: calc(
calc(100% / 3)
-
calc(1rem * 2)
);
}
рдлрд╝рдВрдХреНрд╢рдВрд╕ рд╕реЗ рдиреЗрд╕реНрдЯреЗрдб рдХрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ calc()
, рдХреНрдпреЛрдВрдХрд┐ рдХреЗрд╡рд▓ рдмреНрд░реИрдХреЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:.el {
width: calc(
(100% / 3)
-
(1rem * 2)
);
}
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдХреЛрд╖реНрдардХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣рд╛рдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЧрдП рднрд╛рд╡реЛрдВ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╕рдордп рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдирд┐рдпрдо рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╡рд┐рднрд╛рдЬрди рдФрд░ рдЧреБрдгрди рдЬреЛрдбрд╝ рдФрд░ рдШрдЯрд╛рд╡ рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдХреЛрдб рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:.el {
width: calc(100% / 3 - 1rem * 2);
}
рд▓реЗрдХрд┐рди рдЗрд╕ рдШрдЯрдирд╛ рдореЗрдВ рдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЛрд╖реНрдардХ рдХреЛрдб рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдХреЛрд╖реНрдардХ рдХреЗ рдмрд┐рдирд╛, рдХреЗрд╡рд▓ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЧрд▓рдд рдЧрдгрдирд╛ рдХреА рдЬрд╛рдПрдЧреА, рддреЛ рдРрд╕реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдХреЛрд╖реНрдардХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:.el {
width: calc(100% + 2rem / 2);
width: calc((100% + 2rem) / 2);
}
рдХрд╕реНрдЯрдо рд╕реАрдПрд╕рдПрд╕ рдЧреБрдг рдФрд░ рдХреИрд▓реНрдХ ()
рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдорд╣рд╛рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрдЦрд╛ calc()
, рдЧрдгрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рд╕рд╛рде рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреА рдПрдХ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╕реНрдЯрдо рд╕реАрдПрд╕рдПрд╕ рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХрд╕реНрдЯрдо рдЧреБрдг рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдорд╛рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЧрдгрдирд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:html {
--spacing: 10px;
}
.module {
padding: calc(var(--spacing) * 2);
}
рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рд╕реАрдПрд╕рдПрд╕ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрд╕реНрдЯрдо рд╕реАрдПрд╕рдПрд╕ рдЧреБрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рди рд╕реЗрдЯ рдХрд░рдХреЗ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рдХрдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдЬрд╛рддреА рд╣реИрдВред рдлрд┐рд░ рдпреЗ рдорд╛рди рдкреВрд░реЗ CSS рдХреЛрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗредрдХрд╕реНрдЯрдо рдЧреБрдг, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рджреВрд╕рд░реЗ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕рдХрд╛ calc()
рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдкреНрд░рд╛рдкреНрдд рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЖрдк calc()
рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)редhtml {
--spacing: 10px;
--spacing-L: var(--spacing) * 2;
--spacing-XL: var(--spacing) * 3;
}
.module[data-spacing="XL"] {
padding: calc(var(--spacing-XL));
}
рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рдХреЛрдИ рдХрд╕реНрдЯрдо рдкреНрд░реЙрдкрд░реНрдЯреА рдПрдХреНрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП calc()
ред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИредрдХрд╕реНрдЯрдо рдЧреБрдгреЛрдВ рдХрд╛ рд╕реНрд░реЛрдд HTML рдХреЛрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХрднреА-рдХрднреА рдпрд╣ рдмреЗрд╣рдж рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Splitting.js рдЗрдВрдбреЗрдХреНрд╕ рдореЗрдВ рд╢рдмреНрджреЛрдВ рдФрд░ рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред<div style="--index: 1;"> ... </div>
<div style="--index: 2;"> ... </div>
<div style="--index: 3;"> ... </div>
div {
animation-delay: calc(var(--index, 1) * 0.2s);
}
рдЗрди рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рдмрд╛рдж рдХрд╕реНрдЯрдо рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдЗрдХрд╛рдЗрдпрд╛рдВ рд╕реМрдВрдкрдирд╛
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдХрд╕реНрдЯрдо рдкреНрд░реЙрдкрд░реНрдЯреА рдореЗрдВ рдорд╛рдк рдХреА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдирдВрдмрд░ рд▓рд┐рдЦрдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдпрд╛ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЬрд╣рд╛рдВ рдРрд╕рд╛ рдирдВрдмрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдпреЛрдЧ рд╕реЗ рдкрд╣рд▓реЗ, рдХрд┐рд╕реА рддрд░рд╣ рдЗрдХрд╛рдЗрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░реЗрдВред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдПрдХ рдХрд╕реНрдЯрдо рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рдореВрд▓реНрдп рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рдорд╛рдк рдХреА рдХреБрдЫ рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рд╡реНрдпрдХреНрдд рдЗрд╕ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдПрдХ рдирдП рдореЗрдВ рдмрджрд▓рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛, рддреЛ 1
рдорд╛рдк рдХреА рд╡рд╛рдВрдЫрд┐рдд рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдХреЗ рдЗрд╕реЗ рдЧреБрдгрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ :html {
--importantNumber: 2;
}
.el {
padding: calc(var(--importantNumber) * 1rem);
}
рдлреВрд▓реЛрдВ рд╕реЗ рдХрд╛рдо рдЪрд▓рд╛рдУ
рдЖрд░рдЬреАрдмреА рдФрд░ рдПрдЪрдПрд╕рдПрд▓ рдЬреИрд╕реЗ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд░рдВрдЧреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╕рдордп, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрди рдирдВрдмрд░реЛрдВ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ calc()
ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХреБрдЫ рдореВрд▓ HSL рдорд╛рди рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ ( рдпрд╣рд╛рдБ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ):html {
--H: 100;
--S: 100%;
--L: 50%;
}
.el {
background: hsl(
calc(var(--H) + 20),
calc(var(--S) - 10%),
calc(var(--L) + 30%)
)
}
рдЖрдк рдХреИрд▓реНрдХ () рдФрд░ рдПрдЯрд░ () рдХреЛ рдЬреЛрдбрд╝ рдирд╣реАрдВ рд╕рдХрддреЗ
CSS рдлрд╝рдВрдХреНрд╢рди attr()
рдХрд╛рдлреА рдЖрдХрд░реНрд╖рдХ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рд╕рдЪреНрдЪрд╛рдИ: рдЖрдк HTML рд╕реЗ рд╡рд┐рд╢реЗрд╖рддрд╛ рдорд╛рди рд▓реЗрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдкрд░рдВрддреБтАж<div data-color="red">...</div>
div {
color: attr(data-color);
}
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдорд╛рдиреЛрдВ рдХреЗ "рдкреНрд░рдХрд╛рд░" рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ рд╣реИред рдирддреАрдЬрддрди, рдпрд╣ attr()
рдХреЗрд╡рд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рд╕реАрдПрд╕рдПрд╕ рдЧреБрдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ content
ред рдпрд╣реА рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдбрд┐рдЬрд╛рдЗрди рдХрд╛рдлреА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ:div::before {
content: attr(data-color);
}
рдореИрдВрдиреЗ рдпрд╣ рдпрд╣рд╛рдВ рдЗрд╕рд▓рд┐рдП рдХрд╣рд╛ рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ HTML рдХреЛрдб рд╕реЗ рдПрдХ attr()
рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЧрдгрдирд╛ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ:<div class="grid" data-columns="7" data-gap="2">...</div>
.grid {
display: grid;
grid-template-columns: repeat(attr(data-columns), 1fr);
grid-gap: calc(1rem * attr(data-gap));
}
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрдЪреНрдЫреА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ HTML рдореЗрдВ рдХрд╕реНрдЯрдо рдЧреБрдг рдРрд╕реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рд╛рди рд╣реИрдВ :<div class="grid" style="--columns: 7; --gap: 2rem;">...</div>
.grid {
display: grid;
grid-template-columns: repeat(var(--columns), 1fr);
grid-gap: calc(var(--gap));
}
рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдкрдХрд░рдг
рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓ рдЖрдорддреМрд░ рдкрд░ calc()
рд╕реАрдПрд╕рдПрд╕ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХреЗ рд╕рд╛рде рд╣реА рднрд╛рд╡ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ редрдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓, рдирд┐рдпрдо рдЯреИрдмрдпрджрд┐ рдЖрдкрдХреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреНрдпрд╛ рдЧрдгрдирд╛ рдХрд░реЗрдЧрд╛calc()
, рддреЛ рдЖрдк рдЯреИрдм рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВComputed
(рдпрд╣ рдЯреИрдм рдореБрдЭреЗ рдЬреНрдЮрд╛рдд рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рд╡рд╣рд╛рдВ, рдкрд░рд┐рдХрд▓рд┐рдд рдорд╛рди рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛calc()
редрдХреНрд░реЛрдо рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓ рдХрдореНрдкреНрдпреВрдЯреЗрдб рдЯреИрдмрдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рд╕рдорд░реНрдерди
рдпрд╣рд╛рдВ рдЖрдк рдлрд╝реАрдЪрд░ рдХреЗ рд▓рд┐рдП calc()
рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рдпрджрд┐ рд╣рдо рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдорд░реНрдерди calc()
рдХрд╛ рд╕реНрддрд░ 97% рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЛ рдХрд╛рдлреА рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ (рдЬреИрд╕реЗ IE 8 рдпрд╛ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 3.6) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╡реЗ рдЖрдо рддреМрд░ рдкрд░ рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ: calc()
рд╕рдВрдкрддреНрддрд┐ рд╕реЗ рдкрд╣рд▓реЗ рдЙрд╕реА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЬреЛ рдЙрд╕ рдореВрд▓реНрдп рдХреЛ рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдордЭрддреЗ рд╣реИрдВ:.el {
width: 92%;
width: calc(100% - 2rem);
}
рдлрд╝рдВрдХреНрд╢рди calc()
рдореЗрдВ рдХрдИ рдЬреНрдЮрд╛рдд рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдирд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реИрдВред рдкрд░ Caniuse 13 рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╡рд┐рд╡рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпреЗ рдЙрдирдореЗ рд╕реЗ рдХреБрдЫ рд╣реИ:- 59 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдиреАрдЪреЗ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░
calc()
рд░рдВрдЧ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП color: hsl(calc(60 * 2), 100%, 50%)
:ред - IE 9-11 рд╕рдВрдкрддреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЫрд╛рдпрд╛ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛
box-shadow
рдпрджрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рднреА рдорд╛рди рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ calc()
ред width: calc()
рдЯреЗрдмрд▓ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдкрд░ рди рддреЛ IE 9-11 рдФрд░ рди рд╣реА рдПрдЬ рд╕рдорд░реНрдерди рджреГрд╢реНрдп рдбрд┐рдЬрд╛рдЗрди ред
рдЬреАрд╡рди рдЙрджрд╛рд╣рд░рдг
рдореИрдВрдиреЗ рдХрдИ рд╕реАрдПрд╕рдПрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫрд╛ рдХрд┐ рд╡реЗ рдЕрдВрддрд┐рдо рдмрд╛рд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдм рдХрд░рддреЗ рд╣реИрдВ calc()
ред рдЙрдирдХреЗ рдЬрд╡рд╛рдм рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдЪрдпрди рдереЗ рдЬреЛ рд╕рднреА рдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ calc()
рдЕрдкрдиреЗ рджреИрдирд┐рдХ рдХрд╛рд░реНрдп рдореЗрдВ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред- рдореИрдВ
calc()
рдкреНрд░рдмрдВрдзрди рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рд╡рд░реНрдЧ рдмрдирд╛рддрд╛ рдерд╛ .full-bleed { width: 100vw; margin-left: calc(50% тАФ 50vw); }
:ред рдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ calc()
рдореЗрд░реЗ рд╢реАрд░реНрд╖ 3 рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рд╕реАрдПрд╕рдПрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╣реИред - рдореИрдВрдиреЗ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреГрд╖реНрда рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд "рдкрд╛рдж рд▓реЗрдЦ" рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рди рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдерд╛ред
calc()
. , font-size
, . font-size
тАФ calc()
line-height
. ( , calc()
, , , rem
em
. , ).- , . . тАФ :
.margin { width: calc( (100vw тАФ var(--content-width)) / 2); }
. calc()
- , . : .drop-cap { --drop-cap-lines: 3; font-size: calc(1em * var(--drop-cap-lines) * var(--body-line-height)); }
.- , .
- ,
padding
vw/vh
. - рдореИрдВ
calc()
рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХрд░рддрд╛ рд╣реВрдВ background-position
ред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯреНрд╕ рдореЗрдВ рд░рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдкрджреЛрдВ рдХреЗ рд╕рдорд╛рдпреЛрдЬрди рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдХреЗ рд▓рд┐рдП рд╕рдЪ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: "рд░рдВрдЧ рдмрджрд▓рдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рд╕реНрдерд┐рддрд┐, 0.75em
рдиреАрдЪреЗ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрдирд╛ ред"
рдкреНрд░рд┐рдп рдкрд╛рдардХреЛрдВ! рдХреНрдпрд╛ рдЖрдк CSS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ calc()
?