div {
<strong i="5">@value</strong>: 1px;
a: <strong i="6">@value</strong> * 1rem; // 1px - ok
b: <strong i="7">@value</strong> * 1px * 1rem; // 1px - ok
d: <strong i="8">@value</strong> / 1px; // 1px - ok
c: <strong i="9">@value</strong> / 1px * 1rem; // 1rem - unexpected
e: <strong i="10">@value</strong> / 1px + 0rem; // 1rem - unexpected
}
c
λ° d
κ²°κ³Όλ http://lesscss.org/features/#features -overview-feature-operations κ²°κ³Όκ° ννμμ 맨 μΌμͺ½ λ¨μλ₯Ό κ°μ ΈμΌ νλ€κ³ λͺ
μν 1px
)λ₯Ό μμ±ν΄μΌ ν©λλ€. ν
μ€νΈλ μ€μλ‘ μμ κ²°κ³Όλ₯Ό μμ±νλ a / b / c
ννμλ§ λ€λ£Ήλλ€.
#2418 λ° #2472 κ΄λ ¨.
μμ§ν, λλ Lessμμ μ λμ νΌν©ν μ μλ ν¬μ΄ λ μ μ΄ μμ΅λλ€. κ·Έκ²μ μνμ κ΄μ μμ μλ―Έκ° μμΌλ©° μ§μ ν λ°μ κ°μ΄ λͺ¨λ νκ° μμλ₯Ό κΈ°λ°μΌλ‘ ν©λλ€.... μμ μλ―Έκ° μμ΅λλ€.
κ·Έλ¬λ strictUnits
μ½λλ₯Ό 보λ κ·Έκ²λ μ΄ν΄κ° λμ§ μμμ΅λλ€. κ·Έκ²λ λ΄κ° μκ°νλ λλ‘ λμ§ μλ κ² κ°λ€.
κ·Έλμ, μ, κ·Έκ²μ μ΄μνμ§λ§ μμ λλ κ²μ λ³΄κ³ μΆμ§ μμ΅λλ€. λλ νΌν© λ¨μ μνμ΄ μ¬λΌμ§λ κ²μ 보λ κ²½ν₯μ΄ μμ΅λλ€. νμ§λ§ 그건 λλΏμ΄μΌ. μ κ²°κ³Όμ λ§μ°¬κ°μ§λ‘ 1px * 1px
ν΄μΌ 1px^2
(μ μ©νμ§λ§, μ¬μ€μ΄ μλλ€). κ·Έλ¦¬κ³ κ²°κ³Ό 1px / 1px
λμ΄μΌν©λλ€ 1
. Sassλ μ΄λ€ μ’
λ₯μ μνμ λν΄ μ§λμΉκ² 볡μ‘νμ§λ§ κΈ°λ³Έ μν μ리λ₯Ό μ¬μ©νμ¬ λ―Ήμ€ μ λμ λ¨μ μ νκ³Ό κ°μ μμ
μ μνν©λλ€. μλ₯Ό λ€μ΄.
<strong i="13">@value</strong> / 1px * 1rem
μ¬κΈ°μ μνμ 10px / 1px
μ
λλ€. μ΄κ²μ 1
μμ±ν΄μΌ ν©λλ€(Lessκ° μλλΌ μμΉμ μΌλ‘ Sassμμλ λ§μ°¬κ°μ§μ
λλ€). 1 * 1rem = 1rem
. μ΄ κΈ°λ₯μ κΈ°μμ λν΄ Alexisμκ² λΆμΎκ°μ μ£Όλ κ²μ μλμ§λ§ ννμμ 첫 λ²μ§Έ λ¨μλ₯Ό μ ννλ κ²μ λ€μ μ΄μνκ³ νκ°νκΈ° μ΄λ €μ°λ©° μ΄λ¬ν λ²κ·Έκ° μλ μ£μ§ μΌμ΄μ€λ‘ μ΄μ΄μ§ μ μμ΅λλ€.
λ΄ $0.02.
μ μκ°μλ μνμ λ³κ²½κ³Ό λ§μ°¬κ°μ§λ‘ νΌν© λ¨μκ° λ³κ²½λμ΄ λ μ¬μ΄μ μΈ λ²μ§Έ μ΅μ μ΄ μμ΄μΌ νλ€κ³ μκ°ν©λλ€.
strictUnits: false
- μν λ° κ°μ λ¨μ μλstrictUnits: ?
- μ: 1px / 1px // output 1
, 100vh - 10px // output 100vh - 10px
μ¦, νΌν© λ¨μμ κ²½μ° ννμμ κ·Έλλ‘ λκ³ μΆλ ₯ - varsμ ν λΉλκ³ calc()μμ μ¬μ©λλ νμ ννμμ μ μ© - λ―Έλμ λν΄νΈ?strictUnits: true
- μ€λ₯ λ°μ(μ΄κ²μ΄ μΌλ§λ μ μ©νμ§ λͺ¨λ₯΄κ² μ΅λλ€.)μ΄ λ¬Έμ λ λ¨μ/μ°μ μ²λ¦¬μ λν κ°μΈμ μΈ μκ²¬μ΄ μλλλ€. μ체 λ¬Έμλ₯Ό λ°λ₯΄μ§ μλ μ»΄νμΌλ¬μ κ΄ν κ²μ λλ€. (λλ¨Έμ§λ μλ₯Ό λ€μ΄ https://github.com/less/less.js/issues/1366#issuecomment-342361948 μ°Έμ‘°).
μ΄ λ¬Έμ λ λ¨μ/μ°μ μ²λ¦¬μ λν κ°μΈμ μΈ μκ²¬μ΄ μλλλ€. μ체 λ¬Έμλ₯Ό λ°λ₯΄μ§ μλ μ»΄νμΌλ¬μ κ΄ν κ²μ λλ€.
λ€, μκ² μ΅λλ€. κ·Έλ¬λ κΆκ·Ήμ μΌλ‘ μ΄λ»κ² "κ³ μΉ " κ²μΈκ°μ κ΄ν κ²μ λλ€. κ·Έλ μ£ ? κ·Έλμ μ λ μ΄κ²μ΄ κ³ μΉ μκ°μ΄ μλ€κ³ μκ°νλ©° λμ λ μ§κ΄μ μΈ λμμ ν΄μΌ νλ€κ³ μκ°ν©λλ€. νμ§λ§ λ€, 그건 κ·Έλ₯ μ μκ°μ λλ€.
@seven-phases-max μ°Έκ³ μ¬ν: λλΆλΆμ λ¨μ μλ λ°©λ²μ λ€μ μμ±νμΌλ©° μ€μ λ‘ μ΅μ’ λ¨μλ₯Ό κ²°μ νκΈ° μν΄ μ΄μν 곑μλ₯Ό μ¬μ©νμ΅λλ€. λλ μ λμ κ°μ νλ κ²μ΄ μ΅μ μ΄ μ λ¬λ λ μΌμͺ½ μ λμ΄ μ΄κΈ°λ©΄ ν¨μ¬ λ κ°λ¨ν΄μ‘μ΅λλ€.
(μ격ν λ¨μ κ°μ κ°λ₯μ±μ λν΄ λ€λ₯Έ μκ²¬μ΄ μλ λͺ κ°μ μ€λ λκ° μμμ§λ§ κ·Έκ²μ΄ νΈλ컀 μ 체μ νΌμ‘κΈ° λλ¬Έμ(λλ μ μ΄λ μ μ© μ€λ λλ₯Ό 빨리 μ°Ύμ μ μμ) μ λ λ¨μν ν΅μ¬ λΆλΆμ λ€λ¦΄ κ² κ°μ΅λλ€.)
μ λν κ°μΈμ μΈ μκ°
μ격ν λ¨μ: ? - μ: 1px / 1px // μΆλ ₯ 1, 100vh - 10px // μΆλ ₯ 100vh - 10px
(κ²°κ³Ό/λ Έλ ₯ λΉμ¨ λλ¬Έμ) κ°μΉκ° μμ κ²μ λλ€. μ¦, μ€μ λ‘ κ°μ ν μ¬νμ΄ μμ΅λλ€(μμ κ°μ΄ λͺ λ°±ν λ²κ·Έλ₯Ό μμ νλ κ² μ μΈ).
(μ΄κ²κ³Ό μ΅μνμ κ°/μμ
ν¨ν΄/μμ λ₯Ό νλμ½λ©νλ κ²μ λ°λνμ¬) μ§μ μΌλ‘ μΌλ°ννλ €λ©΄ λͺ¨λ μΌλ°μ μΈ μ°μ λ±μμ μ μ νκ² μ²λ¦¬ν΄μΌ νλ―λ‘ pxΒ²
μ κ°μ "νμ" λ¨μλ₯Ό λμ
ν΄μΌ ν©λλ€. λΉμ·ν. μ : a: 1px; b: 2px; c: 4px;
μ μμ κ²°κ³Ό a*b/c
(λΆλͺ
ν λ°μλ€μ΄λ (a*b)/c = a*(b/c)
κ²) .5px
μ κ²°κ³Ό μ¦ a*b
μμ΄μΌν©λλ€ 2pxΒ²
(μ μ΄λ λ΄λΆμ μΌλ‘λ).
λ€λ₯Έ ꡬν λ¬Έμ κ° μμ΅λλ€( 1/1hz = 1s
λ±κ³Ό κ°μ κ²μ κ³μ°νλ κ²λ μ΄μνκ² λ³΄μΌ κ²μ΄μ§λ§ 곡μμ μΌλ‘λ...) μΌνΈλ‘ κ³μ°: CSS Units
κ° λ무 ν° κ³°μ΄λΌκ³ λ§νμ΅λλ€. μ΄μ μμ΄ μ°λ₯΄λ€(" 1px/1px = 1
μ κ°μ κ²μ΄ μ§κ΄μ μΌλ‘ 보μ΄κΈ° λλ¬Έμ ").
strictUnits: true - μ€λ₯ λ°μ(μ΄κ²μ΄ μΌλ§λ μ μ©νμ§ λͺ¨λ₯΄κ² μ΅λλ€.)
κΈ°λ³Έμ μΌλ‘ λ¨μ μ ν λ°/λλ νΌν© λ¨μκ° λ§μμ λ€μ§ μμΌλ©΄ μ΄λ¬ν μ°μ μ νμ©νμ§ μλ λ μ격ν μ½λ© μ€νμΌμ λμ
ν μ μμ΅λλ€(λ°λΌμ νμ¬ strictUnits: true
λ κΈ°λ³Έμ μΌλ‘ μ΄ μ½λ© μ€νμΌμ κ°μ νλ μ΅μ
μ
λλ€).
κ°μ₯ μ μ©ν λκΈ
μμ§ν, λλ Lessμμ μ λμ νΌν©ν μ μλ ν¬μ΄ λ μ μ΄ μμ΅λλ€. κ·Έκ²μ μνμ κ΄μ μμ μλ―Έκ° μμΌλ©° μ§μ ν λ°μ κ°μ΄ λͺ¨λ νκ° μμλ₯Ό κΈ°λ°μΌλ‘ ν©λλ€.... μμ μλ―Έκ° μμ΅λλ€.
κ·Έλ¬λ
strictUnits
μ½λλ₯Ό 보λ κ·Έκ²λ μ΄ν΄κ° λμ§ μμμ΅λλ€. κ·Έκ²λ λ΄κ° μκ°νλ λλ‘ λμ§ μλ κ² κ°λ€.κ·Έλμ, μ, κ·Έκ²μ μ΄μνμ§λ§ μμ λλ κ²μ λ³΄κ³ μΆμ§ μμ΅λλ€. λλ νΌν© λ¨μ μνμ΄ μ¬λΌμ§λ κ²μ 보λ κ²½ν₯μ΄ μμ΅λλ€. νμ§λ§ 그건 λλΏμ΄μΌ. μ κ²°κ³Όμ λ§μ°¬κ°μ§λ‘
1px * 1px
ν΄μΌ1px^2
(μ μ©νμ§λ§, μ¬μ€μ΄ μλλ€). κ·Έλ¦¬κ³ κ²°κ³Ό1px / 1px
λμ΄μΌν©λλ€1
. Sassλ μ΄λ€ μ’ λ₯μ μνμ λν΄ μ§λμΉκ² 볡μ‘νμ§λ§ κΈ°λ³Έ μν μ리λ₯Ό μ¬μ©νμ¬ λ―Ήμ€ μ λμ λ¨μ μ νκ³Ό κ°μ μμ μ μνν©λλ€. μλ₯Ό λ€μ΄.<strong i="13">@value</strong> / 1px * 1rem
μ¬κΈ°μ μνμ
10px / 1px
μ λλ€. μ΄κ²μ1
μμ±ν΄μΌ ν©λλ€(Lessκ° μλλΌ μμΉμ μΌλ‘ Sassμμλ λ§μ°¬κ°μ§μ λλ€).1 * 1rem = 1rem
. μ΄ κΈ°λ₯μ κΈ°μμ λν΄ Alexisμκ² λΆμΎκ°μ μ£Όλ κ²μ μλμ§λ§ ννμμ 첫 λ²μ§Έ λ¨μλ₯Ό μ ννλ κ²μ λ€μ μ΄μνκ³ νκ°νκΈ° μ΄λ €μ°λ©° μ΄λ¬ν λ²κ·Έκ° μλ μ£μ§ μΌμ΄μ€λ‘ μ΄μ΄μ§ μ μμ΅λλ€.λ΄ $0.02.