#1872 ì°žì¡°
ì격 몚ëê° êºŒì§ ìíìì êžêŒŽê³Œ ê°ìŽ Ʞ볞ì ìŒë¡ ê·ì¹ì ëíŽ ì격 몚ë륌 ìŒë ë€ë¥ž 겜ì°ë¥Œ calcì ì¶ê°í ì ììµëê¹? ììŒë¡ ììžê° ë묎 ë§ìµëê¹?
@seven-phases-max :
ì, ì륌 ë€ìŽ ./
ëë ëëêž°ì êŽížê° íìí©ëë€(ì: 1/2
-> 1/2
íì§ë§ (1/2)
-> 0.5
) ë±...
ëí "í¹ìí 겜ì°"(ì: x/y
ê° ìêž°ë¡ ëíë ì ìë ìì±)ë ê·žë ê² ëë¬Œì§ ììµëë€( padding
/ margin
íì¬ background
ëëë ìì±) border-radius
ê·žëŠ¬ê³ ê²°êµìë ë ë§ì ì ììŒë¯ë¡ font
ëíŽ ìíë ê²ì²ëŒ 몚ë íëìœë©í ì ììµëë€(ê·žëŠ¬ê³ ê·ž ë묞ì íì¬ êžêŒŽ "íŽê²° ë°©ë²"ì ëšì§ ìŽìì ìŒë¡ë ì ê±°ëìŽìŒ íë ììì ìŽê³ ì죌 ëë¬ìŽ kludge).
ëë ì°ëŠ¬ê° ìŒì í¬ê² ë°êŸžê±°ë ëë¡ì 볎ëë¡ ëìê°ê³ ì¶ë€ê³ ìê°íì§ ììµëë€.
ì, _if_ 3.0ìì ìŒë¶ "Ʞ볞" ì격í ìíì ìíêž° ë묞ì ìŽ ìì
ì ììíë ê²ìŽ ì¢ìµëë€. íì¬ ê²ë³Žë€ ë ë¬Žê±°ìŽ ê²ì ë°ëª
íŽìŒ í©ëë€(ê·žëŠ¬ê³ ìë¡ìŽ --alt-strict-math
ì ëì
íì§ ìê³ ëªšë 묞ì 륌 íŽê²°í ê°ë¥ì±). font
ê°ì íëìœë© ì룚ì
ë€ì ìšê²šì§ 묞ì ë¡ ìžíŽ ë§€ì° ë¹íì€ì ìž ê² ê°ìµëë€...).
ëë ê·žê²ìŽ ì±ì¥íê³ ìë€ë ê²ì 깚ë«ì§ 못íìµëë€.
https://developer.mozilla.org/en-US/docs/Web/CSS/border-radius
:(
ëë íì¬ ì²ìì strictMaths륌 íì¥íë ê²ì ì°¬ì±íë€ê³ ìê°í©ëë€.
ê·žë° ë€ì 2.0.0ì ê²œì° êž°ë³žê°ì DivisionìŒë¡ ì€ì í©ëë€.
ê·žëì..
믞ëìŽ ì¿ŒëŠ¬ - êºŒì ž ìë ê²œì° íì ë
žëì ëí ë¶í ë¡ ì í
êžêŒŽ - êºŒì ž ìë ê²œì° íì ë
žëì ë¶í ë¡ ì í
calc( - êºŒì ž ìê±°ë ëëì
ìž ê²œì° íì ë
žëì ëíŽ ìŒì§ìŒë¡ ì íí©ëë€.
https://developer.mozilla.org/en-US/docs/Web/CSS/border-radius
ì, _any_ "shorhand property"ìì "shorthand values"(ì: x/y
)륌 íì©íë ë°©í¥ìŒë¡ ê°ê³ ìë€ê³ ìê°í©ëë€...
ë€ë¥ž ìµì
.. ê³ì° ížì¶ì ì²ëŠ¬íì§ë§ ëšìê° ê°ë¥í 겜ì°ìë§ ì륌 ë€ìŽ
ê³ì°(1% + 2%) => 3%
calc(100% - 10px) => ë³ê²œëì§ ìì
ìŽë ê² íë©Ž calc
ìŽ ìì ëì§ë§ #1627 ë° êŽë š í목ì ìì ëì§ ììµëë€.
ì, calc(100% - 10 px) => unchanged
ë calc
ëí ì룚ì
ìŽ ë ì ìì§ë§ ìŽê²ìŽ less-heavy-than-parens-everywhere
ì룚ì
ì íìì±ì ì·šìíì§ë ììµëë€.
ì격í ìíì ë€ì ê²í íë ê²œì° percentage()
ì ê°ì Less íšìë ëŽë¶ì ì¶ê° êŽížê° íìíì§ ìë€ê³ ì ìíê³ ì¶ìµëë€. ì격í ìíì ì¬ì©íë©Ž ìžì륌 ìŽì€ìŒë¡ ê°ìžìŒ í©ëë€. ìŽë ê² íë©Ž percentage(16 / 17)
ë° percentage((16 / 17))
ê° ëªšë ì íšíë¯ë¡ íŒë곌 ì°Ÿêž° íë ë²ê·žì ê°ë¥ì±ì í¬ê² ì€ìŒ ì ììµëë€.
@calvinjuarez V2 ë íë¬ê·žìžìŽ í겜ì ììì ìì íšì륌 ì¶ê°í ì ìë íë¬ê·žìž íì ìì€í
ì ì ê³µíë©° ìŽë¬í ì믞ìì ìœìŽë ìŽë¬í ëŽì¥ íšìê° ëšìŒ ê° ëë ííìì ììíëì§ ê²°ì í ì ììµëë€. 16/17
ì ìëœí ë€ì 16/17
_before_ íšìì ì ë¬ëêž° ì ì íê°íë ê²ì ì¬ë°ë¥Žì§ ìì ê²ì
ëë€.
ê·ž 맥ëœìì ./
ë³íë ëŽê° ê·žê²ì ë¹êµíë ê²œì° (ë§€ì° ê·¹ì ìž ë³í ë ê² ìŽíŽíì§ë§ ëŽê° ê°ì¥ ì¢ìíë ê² ê°ë€ (/)
, ê³ì°íì§ ê·žê²ë ì ì 공백 íìí©ëë€ .
, ì륌 ë€ìŽ 16 ./17
ê° ìëëŒ 16./17
, í ).
íì¬ ì íší CSS륌 ë 깚ë ë ë€ë¥ž ê²ì 배겜 ìêž°ì ëë€.
background: url(image.png) 50%/300px no-repeat;
ëë íì¬ ì²ìì strictMaths륌 íì¥íë ê²ì ì°¬ì±íë€ê³ ìê°í©ëë€.
ëë€
ë¶í
ìŒì§
ê·žë° ë€ì 2.0.0ì ê²œì° êž°ë³žê°ì DivisionìŒë¡ ì€ì í©ëë€.
ì£ì¡í©ëë€. 2.0ìŽ ì¶ìëêž° ì ì ìŽì ìëµíì§ ìììµëë€. ì¢ì 볞ë¥ìŽëŒê³ ìê°í©ëë€. Naked ëëì ì°ì°ìë ë묎 ë§ì CSSì 충ëíë©° ì¬ëë€ìŽ ë ë§ì CSS3 êž°ë¥ì ì¬ì©íšì ë°ëŒ ì ì ë 충ëíê² ë©ëë€. ê·žëŠ¬ê³ ë§ì 겜ì°ì êŽížê° íìíì§ ìêž° ë묞ì 몚ë ìíì êŽížê° íìíì§ ìë€ë ì¬ëë€ì ë°ë°ì ìŽíŽí©ëë€.
@seven-phases-max
16/17ì íì©í ë€ì íšìì ì ë¬ëêž° ì ì 16/17ì íê°íë ê²ì ì¬ë°ë¥Žì§ ììµëë€.
ìë°í ë§íë©Ž ë€, ë§ìµëë€. ìŽê²ì íšìì ëë¬íêž° ì ì, í¹í ì¬ì©ì ì ì íšìì ëíŽ íê°ëìŽìë ì ë©ëë€. ê·žë¬ë í©ëŠ¬ì ìŽëŒë©Ž íšìê° ìŽì ê°ì ìžì륌 ì²ëŠ¬íëë¡ íì©íë ê²ìŽ íëª í ê²ìŽëŒê³ ìê°í©ëë€. ë°ëŒì ë°±ë¶ìšì í ì€íž ìžìë¡ 16/17ì ìì íê³ ë°±ë¶ìš íšìë í ì€ížê° ìíìžì§ íìžíêž° ìíŽ ìŒë¶ ëì°ë¯ž íšì륌 ížì¶í ì ììµëë€. ë°±ë¶ìšì ê²œì° ìžìê° ëªšížíì§ ììµëë€. CSS3 ì ìžì ì¬êž°ìì ì íšíì§ ììµëë€. ë°ëŒì ë€ë¥ž ì¬ì©ì ì ì íšìë ëìŒí ë°©ììŒë¡ ìëí ì ììµëë€. ì íší ìí ë°©ì ìì ëí ìžì륌 íê°íëë¡ ì íí©ëë€. ë°ëŒì ì격í ìíìŽ ìŽ ê²œì° ìŽì€ êŽížë¥Œ "ê°ì "íë€ë ê²ì ë°ëì ì¬ì€ìŽ ìëëë€. ëë ê·žê²ìŽ ì격í ìíì ììŽëìŽì ìœê°ì ë°ë°ì ë¶ë¬ìŒìŒí€ê³ , íìì ë°ëŒ 몚ë 겜ì°ì ì¥í©íŽìŒ íë€ê³ ì ìíë€ê³ ìê°í©ëë€.
--math ìµì ì ë€ì곌 ê°ì ì ììµëë€.
ë°ëŒì --strict-math=true륌 ë ìŽì ì¬ì©íì§ ìê³ --math=strictì ë³ì¹ìŒë¡ ë§ë€ ì ììµëë€.
ê·žë¬ë í©ëŠ¬ì ìŽëŒë©Ž íšìê° ìŽì ê°ì ìžì륌 ì²ëŠ¬íëë¡ íì©íë ê²ìŽ íëª í ê²ìŽëŒê³ ìê°í©ëë€.
ê·žê²ë€ì ìŽë¯ž íì©ë©ëë€( percentage(16 / 17)
ë° percentage((16 / 17))
ê° --strict-math=on
ì ìŽë»ê² ìëíëì§ í
ì€ížíììì€).
ìŽë€ êž°ë¥ë ì¬ì©íì§ ìì§ë§:
ê·žë° ë€ì ë°±ë¶ìš íšìë í ì€ížê° ìíìžì§ íìžíêž° ìíŽ ìŒë¶ ëì°ë¯ž íšì륌 ížì¶í ì ììµëë€.
ëšìí ìŽë° ììŒë¡ ê° íšìë extra-helpers-conversion-arg-checking-smart-arg-handling-stuffì ~20ê°ì ì¶ê° ëŒìžì ê°ì žìŒ íë ë°ë©Ž ì첎 íšì ìœëë ëë¶ë¶ì ê²œì° ëš íë(!) ëŒìžìŽêž° ë묞ì ëë€.
ê° íšììë 20ê°ì ì¶ê° ì€ìŽ ììŽìŒ í©ëê¹? ìŽë»ê² ìê°íìžì?
ë°±ë¶ìšìŽ ìŽë¯ž ëšìŒ êŽíž ì격í ìíìì ìëíë ê²œì° @calvinjuarez ì 묞ì 륌 ìŽíŽí ì ììµëë€. ë¹ì ì ë¹ì ì ìëµìì ëšìŒ êŽížë¥Œ ë¬ì±í ì ìë€ë ê²ì ììíë ê² ê°ììµëë€.
ê° êž°ë¥ìë 20ê°ì ì¶ê° ì€ìŽ ììŽìŒ í©ëê¹? ìŽë»ê² ìê°íìžì?
5, 10, 20... ì€ì ìœë/볎조 ìœë ë¹ìš -> 0
ê²œì° ì íí ì«ì륌 ëê° ì 겜ì°ê² ìµëê¹? (ì€ì©ì ìž ì ê·Œ ë°©ìì ì·šíë©Ž ì§êžì²ëŒ NaN%
륌 ìì±íë ëì ì€ë¥ë¥Œ ëì§ê³ percentage(16 / 17)
ìì ë©ì¶ê³ ë³íì ìííì§ ììµëë€. ìŽ ë°©ë²ìŒë¡ë ì¬ì í 4ì€ì ì¶ê° ìœë - êžì, ë ì ê±°ë ë ìì© ê°ë¥í ê² ê°ìì :)
ëŽ ìŽêž° ìëµì ê·žê° ìŽ 16/17
-> (16/17)
ë³íìŽ ì»ŽíìŒë¬ ì첎(íšìê° ìë)ì ìíŽ ììì ìŒë¡ ìíë ê²ìŽëŒê³ ê°ì íë€ë ì믞ììµëë€.
ìµì ì ëíŽ ìŽìŒêž°í©ëë€. ì벜í ìžììì ëë ìŽê²ì ëí ìµì ìŽ ì í ìë€ê³ ê¿ê¿ ê²ì ëë€. -maintainable.. ì¬ì§ìŽ í ì€ì§ëŠ¬ ìì ìì /ë³ê²œì ìíŽ ììž¡íŽìŒ íê³ ìííŽìŒ íë í ì€ížì ìê° êž°íêžìì ìŒë¡ ìŠê°í©ëë€... (ê±°ì ìŽì ììŽ).
ëë ê·žê²ìŽ ë€ì곌 ê°ì ê²ìŽëŒê³ ìê°íìµëë€.
percentage: function(...) {
Helper.convertMath(arguments); // a function that doesn't need it doesn't call it
// ... the rest
}
ìµì ì ëíŽ ìŽìŒêž°í©ëë€. ì벜í ìžììì ëë ìŽê²ì ìí ìµì ìŽ ì í ìë ê¿ì ê¿ ê²ì ëë€.
ëë ëìíë€. ê·žë¬ë ëšêž°ì ìŒë¡ë ìµì ìŽ íìí©ëë€. í¹í ì격í ìí ë° ë ê±°ì ëììì ë²ìŽëë 겜ì°. "ì€ë§íž ìí" ìµì ì ìì±íë©Ž ë ë€ ë ìŽì ì¬ì©ëì§ ìë ê²ìŒë¡ íìë ì ììµëë€.
Helper.convertMath(arguments);
arguments
ì(ë) ë묎 ëêŽì ì
ëë€.
êž°ê»íŽìŒ ( percentage
ë§ ê³ì°íë ê²ìŽ ìëëŒ ìŽìšë ìžëªšê° ìì§ë§ ì«ì ìžì륌 êž°ëíë ë€ë¥ž íšì) ìµì ì구 ì¬íì ë€ì곌 ê°ìµëë€.
some: function(a, b, c) {
a = convert2number(a, "Error message when fails");
// b is not a number for example
c = convert2number(c, "Error message when fails");
}
íì§ë§ 귞걎 ëŽ ìì ìŽ ìëìê³ , ëŽê° ì믞íë ë°ë ìë§ë ë€ì곌 ê°ì ê²ì ëë€. ìŽê²ì íì ê°ë¥íì§ë§ ì묎ë ê·žë° ìœë륌 ìì±íë ê²ì ê·ì°®ê² íì§ë ììµëë€... (ì ê°ì ëª ê°ì§ ì íë ììž ë ìì )...
ë€, ìê² ìµëë€.
percentage(16 / 17)
ì€ë¥ ë°ì
íì€í ê°ì ìŽ ë ê²ì
ëë€. ( NaN%
ê° ì ì©í ì¶ë ¥ìŽ ë ê²ìŽëŒê³ ë ìê°í ì ììµëë€.)
ìŽë€ íšìê° ê·žë€ì ìžìì ëíŽ íëª íê² íë €ê³ íë í, 몚ë ê²ì ììíë €ê³ í ìŽì ê° ììµëë€. @matthew-deanìŽ ì ìíë ëì°ë¯ž êž°ë¥ì êž°ë¥ ìì²ìŽ ìŽë£šìŽì§ê³ í¹ì êž°ë¥ìŽ ë ëëíŽì§êž° ìíŽ ë Œìëêž° ë묞ì ìë¹í ê°ëšíê² êµ¬íë ì ììµëë€.
ì¬ì€ ì²ìë¶í° ìí íšìë§ ìžìì ëíŽ íëª
íŽìŒ íë€ê³ ë§íê³ ì¶ìµëë€.
ížì§: ì€ì ë¡ ìí íšìê° íëì ìžìë§ ì ë¬ë ëë§ë€.
ìŽì ëí ìíë ìŽë»ìµëê¹? LESSê° ì못ë CSS ìì±ì ìíìŒë¡ 구묞 ë¶ìíë €ê³ íë€ë ë¶ë§ ì lost-column: 1/3;
ì€ëš.
ëí http://www.w3.org/TR/css-grid-1/#grid -template-rowcol LESSìì ìëíì§ ìë ê² ê°ìµëë€.
ëêµ°ê°ê° ëª ìì ìŒë¡ LESS륌 ì¬ì©íì¬ ìì±ì 구ë¶íë ë° ì¬ì©íë €ë ê²œì° ìŽë¥Œ íšì¹í ì ììµëê¹?
@corysimmons ìŽê±° #2769 ì 묌ìŽë³Žê³ ëµì ë€ìê±° ìëê°ì? ì€_ì€
ìŽ ë¬žì ê° ì²ì ë°ìíì ë ë Œìíì§ ìì í ê°ì§. ì§ì í ìí ê°ë±ì ëëì ë¿ìž ê² ê°ìµëë€. ê·žëŠ¬ê³ ì°ëŠ¬ë 볞ì§ì ìŒë¡ CSS "ë¶ëŠ¬" 묞ì륌 "ì¬ì¬ì©"íê³ ìêž° ë묞ì ëëì ì 볞ì§ì ìŒë¡ 묞ì ì ëë€.
ì¬ë¬ ê°ì§ ë°©ë²ìŒë¡ ëëì ì "ëí"íë €ê³ íê±°ë (ìŽ ë¬žì ì ëí ì°ëŠ¬ì 첫 ë²ì§ž íŽê²°ì± ìŒë¡) 몚ë ìíì ëííë €ê³ íꞰ볎ë€ë ì ì°ëŠ¬ê° ëª ë°±í ê²ì ëíŽ ìŽìŒêž°íì§ ììëì§ ê¶êží©ëë€. ê·žëì ë¶ëª í a) Less ìœë륌 몚ížíê² ë§ë€ê³ , b) 충ëì ìŒìŒíµëë€.
ìŽê²ì ìíí ìê°ì ê°ê³ ìíì êŽížë¡ 묶ì í, ê·žê²ìŽ ëšì§ ëëì ìŒì§ëŒë _still_ì ìíìŽ ìŽë¯ž êŽíž ìì ìë 겜ì°ì 몚ížì±ì ì ë°í©ëë€. (ìŽë êŽížê° "ìí ëíŒ"ì ì못ë ì íìì ì믞í ìë ììµëë€.)
/
륌 ëëêž° ì°ì°ìë¡ ì¬ì©íì§ ìë ìŽì ë 묎ìì
ëê¹? ëë ê·žê²ìŽ ìŒë°ì ìž ëëêž° êž°ížëŒë ê²ì ìê³ ìì§ë§ CSS륌 íì¥íêž° ìíŽ Lessê° ìíí ë€ë¥ž 구묞 ì 충ì ìŽ ììµëë€. ê·žëŠ¬ê³ ì°ëŠ¬ê° Ʞ볞ì ìŒë¡ ëšìŒ ì¬ëì륌 ì¬ì©íì¬ ì²ìì Lessê° ìì±í 묞ì 륌 íŽê²°íë €ê³ íë€ë ê²ìŽ ë¶ëª
í©ëë€. ì°ëŠ¬ë 몚ížì±ì ë§ë€ê³ ê·ž 몚ížì±ì ë°ì ìí€ë €ê³ í©ëë€.
ê³µì íê² ë§íŽì, ë€ë¥ž ìí êž°ížë 몚ë CSSì ë€ë¥ž ë¶ë¶ìì ì©ëê° ë³ê²œë©ëë€. ìíììì ì¬ì©ìŽ 몚ížì±ì ì ë°íì§ ìëë€ë ê²ì ëë€.
ëª ê°ì§ ììŽëìŽë¥Œ ì ìíë €ê³ íì§ë§, ìŽë¯ž ë¶í ì ëí íì€ ë첎 묞ìê° ììµëë€. í€ë³Žëì ìë ÷
ìžì ë€ìì ì°Ÿììµëë€.
ëëì êž°ížë ëí ìŒë°ì ìŒë¡ ìœë¡ (:)ìŒë¡ íìëê³ "~ìŽë€"ëŒê³ ìœë ë¹ìš êž°ížì ìíì ìŒë¡ ëìŒí©ëë€. ë°ëŒì ììì ì€ì x ë° 0ìŽ ìë ì€ì yì ëíŽ ë€ì ë°©ì ììŽ ì±ëŠœí©ëë€.
x ÷ y = x : y
ë€ì ë§íŽ:
lost-column: 1/3; // value
lost-column: 1:3; // division
ìíìì ìœë¡ ì ì¬ì©íë €ë©Ž ìœê°ì íì ì¡°ì ìŽ íìíë€ë ê²ì ìê³ ìì§ë§ ìíì ìŒë¡ë _ê·žë ìµëë€_. ë ëì ëì©íìŽ ë ë€ë¥ž êž°ížë¥Œ ìê°í ì ììµëë€. ë ë²ì§ž ì íìŒë¡ |
ê° ë ê¹ì? ê·žë¬ë ê·žê²ì ë ììì ìŒ ê²ì
ëë€.
ìê°?
_ëë_, ë€ì곌 ê°ìŽ êŽíž ë°/ëë ëêŽíž ëŽìì ëëêž° êž°ížë¥Œ ê³ì ì§ìí ì ììµëë€.
lost-column: 1/3; // value
lost-column: 1:3; // division
lost-column: (1/3);
lost-column: [1/3];
ë€, ê·žëì ì²ìì ./
ììíìµëë€(Matlab vector-div ì°ì°ììì ìê°ì ë°ì ë ê°ì symsìŽì§ë§ ìê°ì ìŒë¡ë ê°ë²ŒìŽ ì ë묞ì ìë§ë ê°ì¥ ë ë¬Žê±°ìž ê²ì
ëë€. êž°ë°í ììŽëìŽ).
:
- ë°ìŽì§ë¥Œ í ë² ë ížìí©ëë€. ìŽ êž°ížë ë묎 ë§ì CSS 컚í
ì€ížìì ì¬ì©ë©ëë€. ì¬ì€ ìŽë¯ž 충ëíë êµ¬ë¬žìŽ ììµëë€.
.foo(<strong i="9">@a</strong>: 1, <strong i="10">@b</strong>: 2) {
result: <strong i="11">@a</strong> @b;
}
bar {
<strong i="12">@b</strong>: 4;
.foo(<strong i="13">@b</strong>:3); // would mean both @second-parameter:3 and 4/3
}
@seven-phases-max ì, ë€, ì ì¥. í€ë³Žëê° ë 컞ëëŒë©Ž. ë€, ë¶í ì ìí 2ì ìíì€ë ë¶ê°íŒíŽ 볎ì
ëë€. ì 첎 ì€ë ë륌 ìœì ì§ ì€ëëìŽì ììŽ ë²ë žìµëë€. ./
ì ë§ ëìì§ ììµëë€. ë¹ì 곌 @lukeapage ê° ëªšë ì°žì¬íë€ë©Ž ê·žê²ì ëì ííìŽ ìë ê²ì
ëë€. ì ì ëšê³ë¡ ì®êž°ê³ ìŽìê° ìëì§ ìŽíŽë³Œê¹ì?
ë€ì ìœìŽë³Žë©Ž ë€ì곌 ê°ìµëë€.
ê³ì°íì§ ìì ëë
.
ìì ê³µë°±ìŽ íìí©ëë€(ì:16 ./17
ê° ìëëŒ16./17
ëìíëì§ ì ëªšë¥Žê² ìµëë€. ì, 16.
ë êž°ì ì ìŒë¡ ì íší ì«ììŽì§ë§ ëêµ°ê°ê° ê·žë ê² ì°ë ê²ì ìŽìí ê²ì
ëë€. 공백ìŽë ìëë ìŽë»ê² ì°ë 16ì 17ë¡ ëëìŽìŒ íë€ê³ ìê°í©ëë€.
ì벜í ìµì
ì ìì§ë§) Ʞ볞ì ìŒë¡ ëëêž°ì /
륌 ì¬ì©íê³ b) íì êŽížë¥Œ ì구íë ê²ë³Žë€ ë«ë€ê³ ìê°í©ëë€. (곌거ì ëŽ ìì¹ìë ë¶êµ¬íê³ ëë ëí ì, í¹í ë€ë¥ž êŽíž ììë ì±ê°ì ìŒì
ëë€. í¹í ëëì
ë묞ì íìí ê²ìŽêž° ë묞ì ê·žë ìµëë€. ì?)
공백ìŽë ìëë ìŽë»ê² ì°ë 16ì 17ë¡ ëëìŽìŒ íë€ê³ ìê°í©ëë€.
ë€ íì€í©ëë€.
ë ìê°íêž°ë íì§ë§ ./
ê° íìì ëª ê°ì§ ì¶ê° ììì륌 ë£ì ê²ìŒë¡ êž°ëí©ëë€(ì«ì 구묞 ë¶ìì ./
ì ì ì€ì§íêž° ìíŽ ì¶ê° ê²í ê° íìíì§ë§ íì¬ë íì .
ëì ëš¹ìµëë€. ).
í¹í ëŽê° ìë í ë¶í ë묞ìë§ íìíêž° ë묞ì ëë€. ë€?)
ë€, ë§ìµëë€. calc
ëŽë¶ì ìœë륌 ê³ì°íì§ ìì§ë§ ìŽ ê²œì° @lukepageìì ì ìí ì룚ì
ìŽ ížëŠì ìííŽìŒ íë€ê³ ìê°í©ëë€.
(êž°ì ì ìŒë¡ 믞ëìë CSS ìì ì¡°ì íšì 구묞ì ê·žëë¡ ì ì§íë©Ž +, -, *
ëíŽ ìœê°ì 몚ížì±ìŽ ì¶ê°ë ì ììµëë€. ê·žë¬ë ê°ìŽ * 20%
íìì ê°êž° ë묞ì ìŽê²ì ë묎 ê·¹ì ìŽì§ ìììŒ í©ëë€(ë°ëŒì ê·žê²ë€ì ë¶ëª
í ë íê°ëì§ ìì exprë¡ ê°ì§ë ì ììµëë€.) ê²°êµ ìŽë¬í ì¬ë¯žë (* 20%)
ì ê°ì íì¬ ê°ìŽ 구묞 ë¶ì ì€ë¥ë¥Œ ì ë°íêž° ë묞ì ìŽìšë 구묞 ë¶ì ë³ê²œìŽ íìí ê²ì
ëë€.
ìŽì©ë©Ž... ì°ëŠ¬ê° ìŽ ìŒì ëíŽ ì못 ìê³ ììì ìë ììµëë€. (ëŽê° "ì격í ìí" êž°ë¥ì ìŽêž° ìŽë ¬í ì§ì§ììêž° ë묞ì ì°ëŠ¬ë ë¶ëª í ë륌 í¬íší©ëë€.)
ì°ëŠ¬ë ìíìŽ ë³Žížì ìŒë¡ ìëíëë¡ íë €ê³ ë žë ¥íê³ ìì§ë§.... ê·žë ê² í íìë ììµëë€. ìŠ, ìíì ìííŽìë ì ëë ê²ìŽ ë¶ëª íŽìŒ íë 겜ì°ì ìíì ìííë €ê³ í©ëë€.
calc(100% - 10px)
ììê° ê°ì¥ íì€í ììì
ëë€. Ʞ볞ì ìŒë¡ Lessê° ì€ëšëìŽìŒ íë ëšì륌 ìºì€í
íì§ ìë í ìíí ì ìê±°ë ìííŽìŒ íë Less ê³ì°ì ììµëë€. 1
ìì ë¡ ì¬ì©ë font ìêž° ìì±ì ìŽíŽë³Žê² ìµëë€.
font: italic small-caps normal 13px/150% Arial, Helvetica, sans-serif;
font: italic bold 12px/30px Georgia, serif;
ìŽì ëí íì¬ íŽê²° ë°©ë²ì font ìì±ì ëíŽ strict-math: on
륌 ì€ì íë ê²ì
ëë€. íì§ë§... ì Lessë ì²ìë¶í° ê³ì°ì íŽìŒ í©ëê¹? ë¬Œë¡ 13px/150%
ë ìíìì ì íší 묞ì¥ìŽì§ë§ Lessìì ì íší ê²ìŒë¡ ì·šêžíë ê²ìŽ í©ëŠ¬ì ì
ëê¹? 12px/30px
ë¹ì ì ì íší ìí 묞ì¥ìŒë¡ _í ì_ ìì§ë§, ê·žë ê² íŽìŒ í©ëê¹? 2
ìŠ: Lessìì ëšìì ëí ìí ì°ì°ì ëšìê° ìëëŒ _integers_ ë° _floats_ì ìíŽ ìíëìŽìŒ í©ëë€. ì¬ëë€ìŽ ì€ì ë¡ ìíì ìŽë° ììŒë¡ ì°ë ê²ì²ëŒ ì°ëŠ¬ë ìŽê²ì ì íší ìí 묞ì¥ìŒë¡ ì·šêží©ëë€. ê·žë¬ë ê·žê²ìŽ ì¬ì€ìŒ ê°ë¥ì±ìŽ ìëì§ë ì ì ììµëë€.
ìŠ, ëêµ°ê°ìê² 13px/150%
륌 13px/1.5
ë¡ ì°ëë¡ ì구íë ê²ìŽ í©ëŠ¬ì ì
ëë€. ê·žëŠ¬ê³ 12px/30px
ê° ìí ì°ì°ìŒë¡ ìë¯žê° ìë€ë ì¬ì€ì 묎ìíëëŒë, ê·žë ì§ ìë€ë ê²ì ì íìë ìê³ font
륌 íìŽížëŠ¬ì€ížì ì¶ê°í íìë ììµëë€. . Less ìì±ìê° ìí ì°ì°ì ìííë€ë©Ž í©ëŠ¬ì ìŒë¡ 12px/30
ìì±íì ê²ì
ëë€. ê·žê²ì í©ëŠ¬ì ìŒ ë¿ë§ ìëëŒ _ì²ìì ìŽë»ê² ìì±íê³ ìëì§-ìŒ ê°ë¥ì±ìŽ ë§€ì° ëìµëë€.
믹ì€ìžì ìì±íê±°ë ëšìŒ ëžë¡ ëŽìì ë€ì곌 ê°ì ê²ì ì¬ì©íë ê²ìŽ ìŒë°ì ì ëë€.
width: <strong i="5">@size</strong> / 2;
height: <strong i="6">@size</strong> / 2;
ëŽê° ì ìŽë° ììŒë¡ ìŒìê¹? _ëêµ°ê°_ê° ìŽë° ììŒë¡ ì°ê³ ììµëê¹?
width: <strong i="10">@size</strong> / 2px;
height: <strong i="11">@size</strong> / 2px;
@size
ê° px
ëšììž ê²œì° _sort of_ ì°ì°ì ìë¯žê° ìì§ë§, ê·žëŒìë ë¶êµ¬íê³ LESS/CSS ììììë ì ìê° ëšìê° ìë ê°ì
ëë€. ë ë²ì§žë ìíì²ëŒ 볎ìŽì§ ììµëë€. CSS ê°ì²ëŒ 볎ì
ëë€.
ê³±ì ìŽë ì ìê° ëšìê° ìë ê°ìŒ ë ê³±ì ìŽë ëëì (몚ížíšì ìíŽìë ëëì ë§ íìíì§ë§ ë ŒëŠ¬ì ìŒêŽì±ì ìíŽìë ê³±ì ë íì)ì ëí ìí ì°ì°ì ì€ëšíë©Ž ìŽ ë¬žì ê° í¬ê² ì¬ëŒì§ ê²ìŽëŒê³ ìê°í©ëë€. ëì¡°ì ìŒë¡, ëšìë ë§ì 곌 ëºì ì ëíŽ ë ŒëŠ¬ì ìŽì§ë§ ìë§ë íìíì§ ìì ê²ì ëë€(ì§êžìŽ ê·žë ìµëë€).
<strong i="18">@pad</strong>: 2px;
width: 10px + @pad;
ê·žë¬ë íëì ê° w/ëšì륌 ë€ë¥ž ëšì w/ì ëíê±°ë ëº ë Lessë ê·žëë¡ ëìŽìŒ í©ëë€.
<strong i="22">@val1</strong>: 100%;
<strong i="23">@val2</strong>: 10px;
width: calc(<strong i="24">@val1</strong> - @val2);
// output
width: calc(100% - 10px);
ë§ì /ëºì (ëë ì ì/ë¶ë)ì ìŒì¹íë ëšìê° íìíê³ ëšìì ëí ìí ì°ì°ìì ì ì/ë¶ëì(ëšì ê³±íêž°/ëëêž° ëšì ìì)ë 몚ížì±ì 99%륌 íŽê²°íê³ ìë¡ìŽ êž°íž ììŽ ì íší ìí ì°ì°ì íì©í©ëë€. .
ì륌 ë€ìŽ, ìŽë¬í ê·ì¹ì ë°ëŒ 배겜 ìêž°ë êŽì°®ì ê²ì ëë€.
background: no-repeat 10px 10px/80% url("../img/image.png");
%
ë CSS ëšìì
ëë€. px
ë ë€ë¥ž CSS ëšìì
ëë€. ë°ëŒì ìíìŽ ììµëë€. í¹ë³í ììžë 0ì
ëë€.
background: no-repeat 0 0/80% url("../img/image.png");
ëêµ°ê° 0ì ë€ë¥ž ì«ìë¡ ëëê±°ë ì«ì륌 0ìŒë¡ ëëë ê²ì²ëŒ 볎ìžë€ë©Ž ê·žëë¡ ìì íê² ì¶ë ¥í ì ìë€ê³ ìê°í©ëë€.
ê²œê³ ë°ê²œ, ê°ì ê²:
border-radius: 30% / 20%;
ë íµê³Œí ê²ì ëë€. ëêµ°ê° ìíì íë €ë ê²œì° ì ì í ìì± ë°©ë²ì ë€ì곌 ê°ìµëë€.
border-radius: 30% / 0.2;
ì¢ì ì ì ìŽë¬í 구ë¶ì íµíŽ ìí ì°ì°ìŽ CSS ê°ìŽ ë ì _ìë€ë ê²ìŽ ë¶ëª
íŽìŒ íë€ë ê²ì
ëë€. border-radius
ìì ì ê°ìŽ ì íší CSS ê°ì ì쪜ì ëšìê° íìíêž° ë묞ì
ëë€. ì€ë³µ/몚ížíšìŽ ìì ê²ì
ëë€.
ëŽê° ìê°í ì ìë í ê°ì§ 겜ì°ë¥Œ ì ìžíê³ ë€ë¥ž 겜ì°ê° ìì ì ììµëë€.
font: 10px/1.5;
ëŒìž ëìŽë¥Œ ì«ìë¡ ëíëŒ ì ìê³ ìŒë°ì ìŒë¡ ê·žëìŒ í©ëë€. (ê·žë¬ë ëí êžêŒŽ ìꞰ륌 ì¬ì©íŽìë ì ë©ëë€.) ê·žë¬ë í ê°ì§ 겜ì°ë¡ ì€ìŽë©Ž ꜀ ì¢ìµëë€. font
(êžêŒŽ ê° ëŽì ëŽë¶ íšì ì ìž)ì ëíŽ ì격í ìíì ìŒë ê²ì êŽì°®ì íŽê²°ì±
ì
ëë€. (ë ëì ê²ìŽ ìëì§ íì€íì§ ìì§ë§ ìëí©ëë€.) ê·žëŠ¬ê³ ìŽë¬í êžêŒŽ ìœì ê°ì ìŒë°ì ìŒë¡ ê°ì žìš UI ì€íìŒ ëŒìŽëžë¬ëŠ¬, CSS ì¬ì€ì ëë ì¬ì©ì ì ì êžêŒŽ ì€íìŒ ìížì ëíëêž° ë묞ì ì¬ì í ê°ì¥ íŒíŽê° ì ì ì룚ì
ì
ëë€.
ë°ëŒì ì격í ìíì ì¬ì©í ìë ìì§ë§ ìŽë¬í ë³ê²œìŒë¡ ìžíŽ ë íìíê³ í¥í ìµì ìŒë¡ íìíì§ ìì ìë ìë€ê³ ìê°í©ëë€.
ê°€ë¬ëŠ¬ì ëµë³/ëêžì íìí©ëë€.
1 _ëë @lukeapage ì ëêž ê³Œ @seven-phases-maxì ë§í¬ê° ëŽê° ìŽ ë°©í¥ìŒë¡ ìê°íê² ë§ë ìŽì ìì ë¶ëª
í íŽìŒ íë€ë ê²ì 깚ë¬ììµëë€.
2 _ìì륌 볎멎ì ììëë¯ìŽ, êžêŒŽì ëíŽ ì격ìíì ìŒë ê²ì ë¶ê°íŒí íŽê²°ì±
ìŒ ì ìì§ë§, ëëšžì§ ë
ŒëŠ¬ê° ì ì©ëë€ê³ ìê°í©ëë€._
ìŒë¶ ìì¬ì 맥ëœìì Less.jsê° ì²ì 늎늬ì€ëìì ë ëšì ìºì€í
ì ê·žë€ì§ 묞ì ê° ëì§ ììë€ë ì ì ì ìíë ê²ìŽ ì€ìí©ëë€. calc()
ê° êµ¬íëì§ ìììŒë©° background
ë° border-radius
ì íší ê°ìŒë¡ ì¬ëìê° ììµëë€. ëë font
ê° ë¬žì 륌 ìŒìŒíš ì ìŒí ì¥ìëŒê³ ìê°í©ëë€(ììŽë¬ëíê²ë ì¬ì í ê·žëŽ ì ìì).
ëŽ ì ìŒí êŽì¬ì¬ë 구í ìž¡ë©Žì
ëë€. ì: calc(4px + 2rem + 20%)
(ì€ì ëšìë ì€ìíì§ ìì)ì ê²œì° ì²« ë²ì§ž ì¶ê°ë ë ìŽì ì«ìê° ìë 결곌륌 ê°ì žì€ë¯ë¡ ë ë²ì§ž ì¶ê° ì²ëŠ¬êž°ë ì
ë ¥ì 구ë³í ì ììµëë€. ì€ë¥ê° ë°ìíŽìŒ íë not-a-number + 20%
묞. ìë§ë í° ë¬žì ë ìëì§ë§(ì¶ê° ì í/ì í íë귞륌 ë£ìŽ íŽê²°í ì ìì), ì¬ì í ìœê°ì ì¡°ì¬ê° íìí©ëë€.
ê·žëŠ¬ê³ ë ë€ë¥ž êŽì¬ì¬ë "ì¬êµ¬ì±"ìŽ íì€íì§ ìë€ë ê²ì
ëë€. ìŠ, ëª
ìì ì«ìì ê²œì° ê²°ê³Œê° ë§€ì° ëª
ííŽ ë³ŽìŽì§ë§ ë³ìì ê²œì° ë§€ì° ëªšížíŽ 볎ìŽêž° ììí©ëë€. ì: border-radius: 10px <strong i="8">@a</strong> / <strong i="9">@b</strong> 30px;
- @a
ë° @b
륌 볎Ʞ ì ê¹ì§ ìŽê²ìŽ ì믞íë ë°ë¥Œ ê²°ìœ ì ì ììµëë€.
ê·žëŠ¬ê³ ì, font
ì¬ì í 묞ì ë¡ ëšì ììµëë€(ìë§ë ë€ë¥ž ìêž° ìì±ì ì쪜ì ëšì륌 ì¬ì©íë ê² ê°ì§ë§ ë€ì ì°ëŠ¬ë ë€ìì ëì€ë í목ì ìì§ ëª»í©ëë€(#2769ì ê°ì ê²ë ê³ì°)... A font
ì ê°ì ëª ê°ì§ ë ì¢ì ê²ìŽ ììŒë©Ž ë€ì ê¹šì§ ê²ì²ëŒ 볎ìŽêž° ììí ê²ì
ëë€.
ì¶ì : í ââê°ì§ ë 묞ì (ì¬ìí íê·ìŒ ì ìì). ë€ì곌 ê°ì ê°ìŽ ììµëë€.
border-radius: 10px / auto;
border-radius: 1px inherit / 2px;
background: ... center / 80% ...;
// etc.
ìŠ, 몚ë ê²ìŽ ìëíë €ë©Ž íì¬ ížíëì§ ìë div-operand-errors륌 ë¹íì±ííŽìŒ foo/bar
, 1x/bar
ë° foo/1x
ê° w/oa륌 íµê³Œí ì ììµëë€. ì€ë¥.
ëŽ ì ìŒí êŽì¬ì¬ë 구í ìž¡ë©Žì ëë€. ì: for calc(4px + 2rem + 20%) (ì€ì ëšìë ì€ìíì§ ìì)
ìŽê²ì ëŽê° ë§íë ê²ì
ëë€. ì€ì ëšìê° ì€ìíŽìŒ í©ëë€. ë ì ì ê²ì ìêŽììŽ ê·žê²ì ëŽë²ë € ëìŽìŒ í©ëë€. 4px + 2rem
ë ëžëŒì°ì ììë ìë¯žê° ìì§ë§ Lessììë ìë¯žê° ììµëë€. ìë¯žê° ìì ë ì¶ê°íë €ê³ í ìŽì ê° ììŒë©° ìŽë¬í ì¶ê° êž°ë¥ ë¬žì ê° ë°ìí©ëë€.
ì:
border-radius: 10px <strong i="10">@a</strong> / <strong i="11">@b</strong> 30px
; -@a
ë°@b
ì ì륌 볎Ʞ ì ìë ìŽê²ìŽ 묎ìì ì믞íëì§ ê²°ìœ ì ì ììµëë€.
ìŽê²ì ì€íìŒ ìì±ì륌 ì첎ì ìŒë¡ ì ì¥í ì ìë 겜ì°ì ëë€(ëêµ°ê° ì€ì ë¡ ìŽë€ ìŽì ë¡ íœì ì rems륌 ì¶ê°íë €ë ê²œì° ì²« ë²ì§ž ìì ëìŒ). ëêµ°ê°ê° ìì ì LESS ìœë륌 ìì±íì¬ ë°ëŒê°êž° íŒëì€ëœê² ë§ë€ ì ìë 몚ë ì¢ ë¥ì êž°ì¡Ž ìì ê° ìë€ê³ íì í©ëë€. ê·žê²ì ìŽëìë ì¡Žì¬í©ëë€.
ëŽê° ì ìíë ìŽë¬í ìí ê·ì¹ìŒë¡ ë€ìì ê³ ë €íììì€.
calc(4px + 2rem - 2px)
Lessë ê·žê²ì calc(2px + 2rem)
ë¡ ê³ì°í ì ììµëë€. ì€ì ë¡ë ì벜íê² êŽì°®ê³ ì€ì ë¡ ì¬ë°ë¥ž ê° ì¶ë ¥ì
ëë€. íì¬ Lessë ìŽë¥Œ calc(4px)
ë¡ ê³ì°í©ëë€. ìŽë ì ííê±°ë ì ì©í ëµë³ìŽ ìëëë€. (ì, íì¬ ëšì륌 ìì íë©Ž ì ííì§ë§ ëšìë ìë¯žê° ììŒë©° ëª ê°ì§ 겜ì°ë¥Œ ì ìžíê³ ë ìíž ìŽì©í ì ììµëë€.) Less ë 2px + 100%
륌 102px
ë¡ ê³ì°í©ëë€. ê·ž 결곌, ì묎ë ê·žê²ì ê²°ê³Œë¡ ìíì§ ìì ë.
몚ë ê²ìŽ ìëíë €ë©Ž foo/bar, 1x/bar ë° foo/1xê° w/oa ì€ë¥ë¥Œ ì ë¬í ì ìëë¡ íì¬ ížíëì§ ìë div-íŒì°ì°ì ì€ë¥ë¥Œ ë¹íì±ííŽìŒ í©ëë€.
ëë ê·žê²ìŽ ì€ì ë¡ ê·žê²ì ì¹ë£íë ê°ì¥ 걎ì í ë°©ë²ìŽëŒê³ ìê°í©ëë€. íšìì ë§ì°¬ê°ì§ë¡ Less ê²°ê³Œê° ììŒë©Ž íµê³ŒíŽìŒ í©ëë€. /
ë ë ìŽìì ìì± ê°ì ëí ì íší êµ¬ë¶ êž°ížìŽêž° ë묞ì í¹ì ìì±ì ëíŽ íì©ë ê°ì ì¶ê°íì§ ìë í Lessë ê·žê²ìŽ _ì íšíì§ ìì_ ê²ì ì ì ììµëë€. (ìëì.) ê·ž ìì ìì 결곌ë ë¹ê·¹ì ìŽì§ ììµëë€. íµê³Œ ê°ìŽ ëžëŒì°ì ìì ì íšíì§ ììŒë©Ž ìê°ì ìŒë¡ ë¶ëª
í©ëë€. Lessê° íì€íì§ ìêž° ë묞ì ì€ë¥ë¥Œ ë°ììí€ë ê²ë³Žë€ ì íší ê²œì° ëžëŒì°ì ì ê°ì ì ë¬íë ê²ìŽ ë ëì ê² ê°ìµëë€.
calc(2px + 2rem) ìŒë¡ ê³ì°í ì ìë ì ì
ëë ê·žê²ìŽ ê°ììŽ ììžíê° (Ʞ볞ì ê²ìŽë€ ì죌 ìë¡ìŽ ìµì í íí ížë€ë¬ íìê° ììµëë€ ê²ì
ëë€ ê²°ìœ ëë €ì 4px + 2rem - 2px
ê°ì ížëŠ¬ì ì ì¥ë©ëë€ (4px + 2rem) - 2px
íë €ë©Ž ì§êž 2px + 2rem
ê·žê²ì ë ë, ë§ì (ìŽ í¹ì í 겜ì°ì ì¬ìíì§ë§ ë íŒì°ì°ì / ìŽìì ë§€ì° ë³µì¡íŽì§ê³ ) 몚ë ì íší ì
íì ìëíì§ ìëë€. ê·žë¬ë ê²°ìœ í ì¬ì ë ¬ ìì§ìŽìŽìŒíë€ 4px + 2rem - 2px
ë¯žìž (íë ê·žëë¡ì
ëë€ 4px - 2px + 2rem
íë©Ž 몚ë ìµì íë©ëë€).
ê·žë¬ë ëŽê° ê·ž ë§ìì ì€ì ë¡ ì믞í ê²ì ë€ì곌 ì ì¬í ê²ì ëë€.
foo/bar, 1x/bar ë° foo/1xê° w/oa ì€ë¥ë¥Œ ì ë¬í ì ìëë¡ í©ëë€.
expr.evaluatorì (4px + 2rem) - 2px
ë foo + 2px
ì ì ì¬íë¯ë¡ ìëíë €ë©Ž ê·žë° ì¢
ë¥ì ì€ë¥ë ìì±íì§ ìììŒ í©ëë€.
ì¬ì€, ëë foo/bar, 1x/bar, foo/1x
í
ì€ížíê³ ê·žë€ì ìŽë¯ž w/o ì€ë¥ë¥Œ íµê³Œíì§ë§(ìŽìíê²ë ëì§ë€ê³ ìê°íìµëë€), ê·žë¬ë ë€ë¥ž ì°ì°ìë 몚ë ì¢
ë¥ì ìŽìí 결곌륌 ìŽëí©ëë€(ì ë§ ì€ìí ê²ì ìëì§ë§ ê° ê²œì°ë¥Œ ìì íë 묞ì ìŒ ë¿ì
ëë€. íëì©).
ëë ìŽê²ìŽ 곌ììŽ ë ìì í ìë¡ìŽ ìµì í ííì ížë€ë¬ê° íìíêž° ë묞ì ê²°ìœ ê·žë ì§ ìì ê²ìŽëŒê³ ìê°í©ëë€. 몚ë ì íší ì íë§ì ìëíë ì¬ì ë ¬ ìì§ìŽ ë©ëë€(ìŽ í¹ë³í 겜ì°ìë ì¬ìíì§ë§ ë ë§ì íŒì°ì°ì/ì°ì°ììê²ë ìë¹í ë³µì¡íŽì§).
ì ì
í? ëìŒí ì°ì ìì ìì€ìì ì°ì°ì륌 íë©Žííê³ (ížëŠ¬ê° Sum(4px, 2rem, -2px)
ìŽë¯ë¡) íží ê°ë¥í ëšìë¡ ì©ìŽë¥Œ ìì§íê³ (ìë§ë 믞늬 ëšì륌 ì ê·ííì¬) ê° ë¶ë¶ì ëšìíí©ëë€. ëšìê° ë
늜 ë³ìë¡ ì·šêžëë êž°íž ëìíì
ëë€.
ì§ì ìì±íê³ ì¶ì§ë§ ë ì í ì€ížëê³ ìì±ë ê°ë¥ì±ìŽ ë ëì ëŒìŽëžë¬ëŠ¬ ê°
ìì ì ìŽê²ìŽ íŽê²°íêž° ì¬ìŽ 묞ì ë ìëì§ë§ ë ìŒë°ì ìž ë¬žì ë ìŽë¯ž ꜀ ì íŽê²°ëììŒë©° ìŽë¬í íì ìì€í ì ë€ë¥ž ë°©ììŒë¡ Less.jsì ì ì©í ì ìë€ë ê²ì ëë€.
ëìŒí ì°ì ìì ìì€ìì ì°ì°ì륌 ë³í©í©ëë€(ížëŠ¬ë Sum(4px, 2rem, -2px)ì).
ê·žëŠ¬ê³ ìŽë€ ííì ížëŠ¬ê° ì€ì ë¡ íë©Žíë ì ìë€ê³ ìê°íëë¡ ìœë륌 ë§ëë ê²ì ì íí 묎ìì ëê¹? (ë°ëŒì ëŽ "suffling"ì í¹ì ê³µì ìê³ ëŠ¬ìŠì êŽí ê²ìŽ ìëëŒ "flatten"ì í¬íšíì¬ "몚ë ìë"ì ëí ì§ëŠêžžì ëë€.)
ê·žë¬ë ë ì í ì€ížëê³ ìì±ë ê°ë¥ì±ìŽ ë ëì ëŒìŽëžë¬ëŠ¬ê° ë§ìŽ ììµëë€.
ë¹ì ìŽ ì§ì¬ìžì§ ì ëªšë¥Žê² ìµëë€. ê·žëì Less ížëŠ¬ë¥Œ ìžë¶ lib ížëŠ¬ë¡ ë³ííê³ ê·ž ë°ëë¡ ë³ííë 몚ë ìœë(JS libs ì€ CSS ëšì륌 ì²ëŠ¬í ì ìë ê²ì ì ìž)ê° ì€ì ë¡ ìµì íí í¹ì 4px + 2rem - 2p
ê°ì¹ê° ìë€ê³ ìê°íìëê¹? í ...
ë°ëŒì ì í 묞ì ê° ëì§ ììµëë€(ëë ê·žê²ìŽ ê²°ìœ ê°ì¹ê° ìì ê²ìŽëŒê³ ë¶ê°ë¥íë€ê³ ë§íì§ë ìììµëë€) - ìëíê³ PRì íìí©ëë€.
(ëí íì ííì ìµì íê° ìŽ í°ìŒì 목íê° ìëë©° ìì 3ì ììë í¬íšëì§ ìëë€ë ì ì ì ìíŽìŒ í 겜ì°ë¥Œ ëë¹íì¬).
ê·žëŠ¬ê³ ìŽë€ ííì ížëŠ¬ê° ì€ì ë¡ íë©Žíë ì ìë€ê³ ìê°íëë¡ ìœë륌 ë§ëë ê²ì ì íí 묎ìì ëê¹? (ë°ëŒì ëŽ "suffling"ì í¹ì ê³µì ìê³ ëŠ¬ìŠì êŽí ê²ìŽ ìëëŒ "flatten"ì í¬íšíì¬ "몚ë ìë"ì ëí ì§ëŠêžžì ëë€.)
구묞 ë¶ìêž°ë 컚í ì€ížê° "êžžìŽ"ìžì§ ì¬ë¶ì íì ížëŠ¬ê° "êžžìŽ"ë¡ íŽìë ì ìëì§ ì¬ë¶ë¥Œ ê²°ì í©ëë€.
ë¹ì ìŽ ì§ì¬ìžì§ ì ëªšë¥Žê² ìµëë€. ê·žëì ë¹ì ì Less ížëŠ¬ë¥Œ ìžë¶ lib ížëŠ¬ë¡ ë³ííë 몚ë ìœëê°
구묞 ížëŠ¬ë¡ 구묞 ë¶ìíŽìŒ í©ëë€. ê±°êž°ìì ëììì ëíëŽë 묞ììŽì ì¶ë ¥íë ê²ì ë¹êµì ê°ëší©ëë€. ëëìê°êž°ê° ë ìŽë €ìž ì ììµëë€. 묞ììŽìì ë€ì 구묞 ë¶ìíŽìŒ í ìë ìê³ , ìžë¶ ëŒìŽëžë¬ëŠ¬ì ížëŠ¬ë¥Œ ê°ì žììŒ í ìë ììµëë€. ëìŽëë ì íí ëŒìŽëžë¬ëŠ¬ì ë°ëŒ ë€ëŠ ëë€.
(ìŽ JS ëŒìŽëžë¬ëŠ¬ ì€ ìŽë ê²ë CSS ëšì륌 ì²ëŠ¬í ì ììì ê³ì°íì§ ìì)
ëšì륌 ëìì ë³ìë¡ ë³ííë©Ž ë©ëë€. ííììŽ êž°íž íììž ëììë ë첎(ì: mm
-> px
)륌 ìíí ì ììµëë€.
í¹ì 4px + 2rem - 2p ìŒìŽì€ë¥Œ ìµì íí ê°ì¹ê° ì€ì ë¡ ììµëê¹?
ëë ë ìŽë µê³ (Lessì ì첎 ìœëê° íŽê²°íŽìŒ íë ìê³ ëŠ¬ìŠ ë¬žì ë¡ì) ë¹ì ìŽ íìíë€ê³ ë§í ê²ë³Žë€ ë ìŒë°ì ìŒë¡ ì ì©í íí ìµì íì ëí ëìì ì ìíê³ ììµëë€.
ëì ëšìíë êŽížë¡ ë¬¶ìž íì ííììŒë¡ 묞ì 륌 íŽê²°í ì ììŒë©° Lessê° ë ë§ì ìí êž°ë¥ì ì¶ê°í ì ìëë¡ í©ëë€.
ìëíê³ PRì íìí©ëë€.
ëë ë žë ¥í ê²ìŽë€. ì€ëìììŒ Less륌 ìŽíŽë³Žêž° ììíê³ íë¡ì ížë¥Œ ìë£íë ë° ë¬žì ê° ììŽì PRì ë°ì§ 못í ìë ììì ìžì í©ëë€.
ëí íì ííì ìµì íê° ìŽ í°ìŒì 목íë ìëê³ ìì 3ì ììë í¬íšëì§ ìëë€ë ì ì ì ìíŽìŒ í 겜ì°ë¥Œ ëë¹íì¬
ììì. ëë ìŽì ì€ íë ë묞ì ì¬êž°ì ììë€. ì ê·žë° ë¬ŒëŠ°ê°?
ì ê·žë° ë¬ŒëŠ°ê°?
êžìì, ìë§ë... ê·žë ë€ë©Ž - ì£ì¡í©ëë€ (ëêµ°ê°ê° êž°ì¡Žì ì¡Žì¬íì§ ìë calc(4px + 2rem - 2px)
묞ì 륌 íŽê²°íêž° ìíŽ íì í ì€ë¹ê° ëìŽ ìë ê² ê°ìµëë€. ìë§ë ì°ëŠ¬ë ë§€ì° ë€ë¥ž ê°ë
ì ê°ì§ê³ ìë ê² ê°ìµëë€. ê°ë²Œì).
Lessê° ë ë§ì ìí êž°ë¥ì ì¶ê°íëë¡ íì©í©ëë€.
ëª ê°ì§ ìŽëŠì ë§ìíŽ ì£Œìê² ìµëê¹?
ê±°ì ì¡Žì¬íì§ ìë
calc(4px + 2rem - 2px)
묞ì 륌 íŽê²°íêž° ìíŽ
ë? ë ì²ëŠ¬í ì ììµëë€. [ëëšžì§ ì€ëª ì ì못 ìŽíŽíì¬ ìì ëš]
ì ìì ëšìí/ì¬ìì±íë €ë©Ž - ìí ë³ê²œ ì¬íì ë€ì곌 ê°ìµëë€.
1px + 2px = 3px
, 1px + 1vh = 1px + 1vh
10px/2 = 5px
, 10px/5px = 10px/5px
1/3 = 1/3
1px + 2vh / 2 = 1px + 2vh / 2
ìŽ ì ìì ë€ìì íŽê²°í©ëë€(ìŽ ì€ë ëìì).
font: 10px/5px
ë° ì ì¬(ë¹ìš) 구묞(ê³ì° ìì)calc(100vh - 30px)
(ê³ì° ìì)lost-column: 1/3
ë° ì ì¬í ì¬ì©ì ì§ì ë¹ìš 구묞(ê³ì° ìì)ëìì ìŽë¬í ë³ê²œì ìŒë°ì ìž Less ìí ì¬ì©ì 99%륌 볎졎í©ëë€. ëí êž°ì¡Ž unit()
ë° convert()
íšì륌 ì¬ì©íë©Ž ì¬ì©ìê° ìíì ìíŽ ížíëë ëšìë¡ ê°ì ìºì€í
í ì ììµëë€.
ë ì²ëŠ¬í ì ììµëë€.
ë¹ì ì ì ì @leewz ê° ììì ë§í ê²ì ìœì§ ììì ë¿ì
ëë€. calc(100vh - 30px)
ì ì묎 êŽë šìŽ ììµëë€. ê·žëŠ¬ê³ "ì¡Žì¬íì§ ìë 묞ì 륌 ê±°ì íŽê²°íêž° ìíŽ"ë " calc
ìì ì°ì ííì ìµì í"ìë§ ì ë
í©ëë€.
@seven-phases-max ì€ì€ ê·žë êµ°ì. ì£ì¡í©ëë€. ìëì, ìµì íí íìê° ììµëë€. ìíì í ë륌 ììëŽììì€.
ìŽ ë¬žì ë ìµê·Œ íëìŽ ììêž° ë묞ì ìëìŒë¡ ì€ëë ê²ìŒë¡ íìëììµëë€. ë ìŽì íëìŽ ììŒë©Ž íìë©ëë€. ê·íì êž°ì¬ì ê°ì¬ë늜ëë€.
묞ì ê° ìêž° ë묞ì ì¬ë ìŽíž ë ìŽëžì ì ê±°íë ê²ì ì¬ì í ââì€ìíë©° CSSê° ë°ì íšì ë°ëŒ ì ì ë ì íëê³ ììµëë€.
@matthew-dean
ì¬êž°ì ì ì ì
ë§ì ë³ížìž ìí ì íë €ê³ í©ëë€...
12px/30px
ë¹ì ì ì íší ìí 묞ì¥ìŒë¡ _í ì_ ìì§ë§, ê·žë ê² íŽìŒ í©ëê¹?
ë€; ë¹ì ìíŽìŒí©ëë€. ë í¬êž° ê°ì ë¹ìšì ëíëŽë ì€ì¹ŒëŒ ê°ì ê³ì°íê³ em ëšìë¡ ë³íí ë ë§€ì° ì ì©í ì ììµëë€.
ìë €ì§ êž°ë³ž êžêŒŽ í¬êž°ê° 16pxìŽê³ ìë €ì§ ì 목 í¬êž°ê° 24pxìŽê³ ë ë€ ë³ìì ìšê²šì ž ìê³ ì¬ë°ë¥ž êžêŒŽ í¬êž°ë¡ í¹ì ì 목 ì íì ì§ì íê³ ì¶ì§ë§ em ëšìëŒê³ ê°ì íŽ ë³Žê² ìµëë€.
@fontsize-body : 16px;
@fontsize-heading : 24px;
// ( ... and then somewhere else ... )
.heading {
font-size : unit(@fontsize-body/@fontsize-heading, em);
// Or if dividing compatible unit values is produces a unit-less scalar
// value ( as it really _should_ -- mind you... ), you could prefer:
font-size : @fontsize-body/@fontsize-heading * 1em;
}
ê·žëŠ¬ê³ íží ê°ë¥í ëšìì ë¶í ì ìí ííììŒë¡ ì§ìíŽìŒ íë ê²œì° ê° ì¬ë¡ì ì ë°ì ë€ë£šêž° ìíŽ ëŠ¬í°ëŽ CSS륌 Less ìí ííììì ëª ííê² êµ¬ë¶íë ë°©ë²ì ê³ì ì§ìíŽìŒ í©ëë€.
ìŽì ë êŽížë¥Œ ì¬ì©íì¬ ìí ííìì ê°ì ì€ííê³ êž°ë³žì ìŒë¡ CSS 늬í°ëŽì ì¬ì©íë ê²ìŽ íì©ë©ëë€. ê·žë¬ë ê·žê²ì ì못ëê³ ì€ë¥ê° ë°ìíêž° ì¬ìŽ ê² ê°ìµëë€. border-radius
ë° font
ìêž°ììì ê°ìŽ 믞늬 조늬ë ë§ì í¹ì ì¬ë¡ê° íìíë©° Lessê° ìŽì ëíŽ ì§ìì ìŒë¡ ìµì ìí륌 ì ì§íŽìŒ í©ëë€. (ëëêž° êž°ížì ëíŽ ëìŒí 묞ì 륌 ë°ììí€ë ìŒë¶ ìë¡ìŽ 귞늬ë ìì±ìŒë¡ ì€ëª
ë ë°ì ê°ìµëë€.)
ê·žëì...
ì ë¹ì ì ì¶ë¡ ì ë€ì§ì§ ììµëê¹? ìŽë€ ê²ìŽ ìí ííìì²ëŒ 볎ìŽê³ íží ê°ë¥í ëšì ê° ìë ê²œì° êž°ë³žì ìŒë¡ ìí ííììŒë¡ ì²ëŠ¬ë©ëë€. ê·žëŠ¬ê³ ë¹ì ìŽ ê·žë° ìŒìŽ ìŒìŽëë ê²ì ìíì§ ìëë€ë©Ž ... êžì; ê·žë° ë€ì ~"..."
íì¶ íŽì¹ë¥Œ ì¬ì©íììì€. ê·žê²ìŽ ì íí 묎ìì ìíŽ ì¡Žì¬íëì§, ê²°êµ...
ì ìì ëí ëì íì¬ ë¹ì :
/
륌 ëšìì ìµì
ì êŽê³ììŽ ìŽëìë ëëì
ìŒë¡ ì·šêžíì§ ë§ìžì(ì íì ìŒë¡ - -sm=on곌 ê°ì ì€ë³µ êŽížë¡ ë¬¶ìž ê²œì° ì ìž).1anything./3whatever
ë° (ì í ì¬í) (1anything/3whatever)
ë§ Lessìì íê°ë©ëë€.+
, -
ë° *
ë³ê²œëì§ ììcalc
íì 묞ì ë ì°ì ì íê° íì§ ìììŒë¡ìš íŽê²°ë©ëë€. calc(...)
ëŽë¶ì ííì(íì§ë§ ë€ì ì€ë³µ êŽížë ìí¥ì ë¯žì¹ ì ìì).@seven-phases-max
ê·žê²ì 묞ì ë /
ê° ëëì
ì°ì°ìë¡ ë¯¿ì ì ìì ì ëë¡ ë¿ëŠ¬ ê¹ê² ë°í ìë€ë ê²ì
ëë€. ë€ë¥ž êž°ížë¥Œ ì¬ì©íë ê²ì ì¬ì©ììê² íë íë§€ê° ë ê²ì
ëë€. ë¹ì ì ìŒë°ì ìž ì¬ì© ì¬ë¡ë¥Œ ì·šíê³ ê±°ì ì묎ë ì¬ì©íì§ ìë ììžì ì¬ì© ì¬ë¡(CSS ìêž°ìì /
)륌 ìíŽ ê·žê²ì ë²ëŠ¬ê³ ììµëë€.
@rjgotten
ê·žê²ì 묞ì ë / ìŽ ëëì ì°ì°ìë¡ ë¯¿ì ì ìì ì ëë¡ ë¿ëŠ¬ ê¹ê² ë°í ìë€ë ê²ì ëë€.
CSSìë ììµëë€.
ê±°ì ì묎ë ì¬ì©íì§ ìë ììžì ìž ì¬ì© ì¬ë¡(/ CSS ìœì¹)륌 ìíŽ.
ì§êžì¯€ìŽë©Ž /
ê° ìŽë¯ž ë§ìŽ ì¬ì©ëê³ /
ë³Žë€ íšì¬ ë ììžì ì
ëë€(ëª ë
ì CSS /
ì ë¬ëŠ¬ font
ììë§ ì°Ÿì ì ììµëë€.
@seven-phases-max ìµì ì 볎륌 ì ê³µíŽ ì£Œì ì ê°ì¬í©ëë€. 묞ì 륌 êŽëŠ¬íë ë° ëììŽ ëëë¡ Stale ëŽì ì¶ê°íê³ ì€ëë ê²ìŒë¡ íìíë ë° ìë¹í ìê°ì í ì íìµëë€. ëí "ë²ê·ž"ì "ì í¬ì©"ìŽëŒë ë ê°ì ë ìŽëžë ë©Žì íìµëë€. íìŽížëŠ¬ì€ížì ì¶ê°í ë€ë¥ž ë ìŽëžê³Œ ê°ì ì ì ì¬íì íìí©ëë€. íìŒì ì¬êž°: https://github.com/less/less.js/blob/3.x/.github/stale.yml
묞ì ì€ë ëë¡ ëìê°êž°...
@rjgotten
ê·íì ì¬ì© ì¬ë¡ë ììì 묞ì 륌 ìì±í©ëë€. ì ì©íë€ë 죌ì¥ì
ëë€. ê·žë¬ë ê·žë° ììŒë¡ ë³ì륌 구ì±íë©Ž @seven-phases-maxê° ì§ì í ê²ì²ëŒ 몚íží 구묞ìŒë¡ íŒí ì ìë 묞ì ê° ë°ìí©ëë€.
CSS륌 Less ìì¹ì ì§ì¹šìŒë¡ ìŒì ì¡ë©Ž ê·žëë¡ ê°ì žë ê³ì°ì 12px륌 30pxë¡ ëë ì ììµëë€. Lessìì ê·žë ê² íë©Ž 몚ížì± 묞ì ê° ë°ìí ë¿ë§ ìëëŒ (ìì¬ì ìž ê²œì°ê° ìë) ì ë¹í ìŽì ììŽ ëªšëžìì ë¶ëŠ¬ë©ëë€. ìë§ë Lessìì ëëœë ê² ì€ íëë ëšì ê°ì ì«ì ê°ì ì¶ì¶íì¬ Lessê° ëëì ì ëíŽ ìŽ ìí ë§ì ì í íìê° ìëë¡ íë ë°©ë²ìŒ ê²ì ëë€.
ë°ëŒì ê°ëší ëëµì ê·íì ìê° ë€ì곌 ê°ì ê²ìŽëŒë ê²ì ëë€.
font-size : @fontsize-body/number(@fontsize-heading) * 1em
íì§ë§ @seven-phases-maxì ì ìë êŽì°®ìµëë€. calc()
ìì _vars_ ë ì¬ì í íê°í ì ìì§ë§ ìíì íê°í ì ììµëë€. ê·žëŠ¬ê³ êŽíž ë°ìì ëëꞰ륌 íê°íì§ ë§ììì€. ì¢ì ííì ìŽëŒê³ ìê°í©ëë€. ê·žëŠ¬ê³ ìë§ë ëšì륌 ëšìë¡ ëëë ë§ë² ëëì
ìíì ì ì§íê³ ëšì륌 ì ì§íê³ ì¶ë€ë©Ž(ì¬ì í ìŽìíì§ë§ êŽì°®ìµëë€), êŽíž ììì ìŒìŽë ì ììµëë€.
Lessìì ìí 죌ì ì ëíŽ ëª ê°ì§ ë€ë¥ž ì ížëê° ìë€ë ê²ì ìê³ ìì§ë§, ê°ì¥ ì ì ë¶ìì©ì ìŒìŒí€ê³ í° ì ì§ ë³Žì륌 ìŒìŒí€ì§ ìê³ ê°ì¥ ìœê² ì¶ë¡ í ì ìë ê²ì ëíŽ í©ìì ëë¬í ì ìë€ë©Ž ì ë§ ì¢ì ê²ìŽëŒê³ ìê°í©ëë€. ëë ê°ë° ë¶ëŽ.
Lessìì ìíì ëí íì¬(Ʞ볞ê°) ì ê·Œ ë°©ììŽ ê¹šì§ ê²ê³Œ ê°ì íìŽì§ì ìë€ê³ ìê°í©ëë€. ê·žëŠ¬ê³ ëªšë ê²ì Ʞ볞ê°ìŒë¡ ëë ê²ìŽ ì¶ë¡ íêž°ë ìœì§ë§ ë¶ëŽì€ëœë€ë íŒëë°±ì ë°ììµëë€. ê·žëì ëë ì°ëŠ¬ê° 곧 Ʞ볞ê°ìŒë¡ ë£ì ì ìë ì¢ì ì€ê° ì§ì ì êž°ëíê³ ììµëë€(ìë§ 4.0ìì?)
ìë§ë Lessìì ëëœë ê² ì€ íëë ëšì ê°ì ì«ì ê°ì ì¶ì¶íë ë°©ë²ìŒ ë¿ì ëë€.
unit
íšìë ë ë²ì§ž 맀ê°ë³ì륌 ì§ì íì§ ììŒë©Ž ì€ì ë¡ ê·žë ê² í©ëë€. ê·žë¬ë ê·žê²ì ì€ì¹ŒëŒê° íì¬ ì ìë ëšìê° ìë Dimension
ë
žë ì íìŒë¡ 구íëìŽ ìë€ë ì¬ì€ì ë¶ìì©ì
ëë€.
ë¶ì¬ ë; ê·žê²ì 뚌 êžžì ê°ì§ë§ ížíëë ëšìê° ìë ì°šìì ëëë ê²ì _ì ë§ë¡_ íŒíê³ ì¶ë€ë©Ž ëšì륌 ëŒìŽëŽë ê²ìŽ íšê³Œê° ììµëë€.
ëë ëí ìŽ í¹ì 맥ëœìì "ížíëë ëšì" ì¶ìž¡(ì a/b
ì ëëì
ìŒë¡ ì ì§íê³ b/c
ì ê·žë ì§ ìì)ì ëíŽ ê°ë ¥íê² ë°ëí©ëë€.
ëšìí ë€ì곌 ê°ì ìŽì ë¡:
a/b
ì êŽë šë ìë¡ìŽ CSS êž°ë¥ì ì¶ê°íë ê²ê³Œë ë°ëŒì ëìê² "íží ê°ë¥í ëšì" í목ì ìì í êŽë šìŽ ìê³ ì§êµíë ê²ê³Œ ê°ìµëë€( -su
ê° ìê±°ë ìë 결곌 ëšìì ëíŽ ìœê°ì í ë¡ ìŽ ìì ì ìì§ë§ 귞걎 ë€ë¥ž ìŽìŒêž°ì
ëë€).
(죌ì 륌 ë²ìŽ:)
ê·žëŠ¬ê³ btw., ìì ìì ëíŽ ë§íë©Ž:
ë€ììŽ ìë 겜ì°
@fontsize-body/@fontsize-heading * 1em;
ìœë ìŽëê°ì ìê³ ë ë³ì ì€ íëë ì€ì ë¡ ë²ê·žë¥Œ ì¬ì©íë px
:)
ì ì í ìœëë ë€ì곌 ê°ìµëë€.
1em * @fontsize-body/@fontsize-heading;
ìŽë íì http://lesscss.org/features/#features -overview-feature-operationsì ë°ëŒ ì ì ìë ëšì륌 ìì±í©ëë€(ìì íŽìŒ í #3047ì ê³ì°íë©Ž ë²ê·žë ë€ì í ë² ë묎 ë§ìŽ ìì±ë ë²ê·žì ìì
ëë€. ìœë ë² ìŽì€ì "íží ê°ë¥í ëšì"ì ëí ì¶ìž¡ ìœë). --su
, number
, unit
bla-bla... íì¬ -su
ëììŽ íìíì§ ììµëë€. "ížíëì§ ìë ì¥ì¹ê° 볎ìŽë©Ž ì€ë¥ë¥Œ ëì§ììì€." , ìŠ ê°ëší ì íšì± ê²ì¬ë (ëìê²ë) ì¢ì ê² ìŽìì
ëë€. 1px/2px->.5
ë° 1px*2px->2px^2
mambo-jambo 곌ì ìì§ëìŽë§ìŽ íìíì§ ììµëë€. ê·žë¬ë ìŽê²ì ë ë€ë¥ž êŽë š ìë ìŽìŒêž°ì
ëë€).
@seven-phases-max
ì€ì ë¡ ë²ê·žë¥Œ ì¬ì©íì¬
ì.. ë€; ë¹ì ë§ìŽ ë§ìì. ìŽ ì¢ê²ë ì€ì ë¡ íë¡ëì í겜ìë íŽë¹ ìœëê° ììµëë€. ìì ì ì€ëª íêž° ìíŽ íšê» ëì§ ê°ëší ììŒ ë¿ì ëë€.
ëë ëí ìŽ í¹ì 맥ëœìì "ížíëë ëšì" ì¶ìž¡(a/bë ëëì ìŒë¡ ì ì§íê³ b/cë ê·žë ì§ ìì)ì ëíŽ ê°ë ¥íê² ë°ëíë€ê³ ë§ë¶ì ëë€.
ëë ì몞ì ì ì륌 ìíë ì¬ëë€ìê² ì¬ëŠ¬ëž ê°ì§ë¡ì ë ë§ìŽ ì ìì ììë€ê³ ìê°í©ëë€. íì§ë§ [ ì¬êž° ] ê·íì ìê²¬ìŽ ê°ì¥ ì€í ê°ë¥í ì ììŽëŒê³ ìê°í©ëë€. 몚ížì±ì ì ê±°íë ê²ìŽ "ì격í ìí"ì ìë ìëììµëë€. ëë ì°ë €ê° 믹ì€ìž ëŽì ì°ì°ê³Œ êŽíž ëŽì 몚ë ì¢ ë¥ì êŽížë¡ ìŽìŽì§ë íšì ížì¶ìŽ ëìë€ê³ ìê°í©ëë€. ê·žë¬ë ìŒë°ì ìŒë¡ ëë Lessìì ìíì ìœê² íë €ë ë žë ¥ìŽ ììŽë¬ëíê²ë ìŠê°ë 몚ížì± ë묞ì ê·žê²ì ë§€ì° ìŽë µê² ë§ë€ìë€ë ì ì ëìí©ëë€.
ëí ëì€ì font: 10px/3
ê° ì íší ìêž°ìì 깚ë¬ììµëë€. ë°ëŒì ì€ì ë¡ ëììŽ ë ì ìë ìê³ ëŠ¬ìŠ ì룚ì
ì ììµëë€.
ì§ë¬žìŒë¡ ëìê°ë €ë©Ž @rjgotten...
ì ë¹ì ì ì¶ë¡ ì ë€ì§ì§ ììµëê¹? ìŽë€ ê²ìŽ ìí ííìì²ëŒ 볎ìŽê³ íží ê°ë¥í ëšìê° ìë ê²œì° êž°ë³žì ìŒë¡ ìí ííììŒë¡ ì²ëŠ¬ë©ëë€. ê·žëŠ¬ê³ ë¹ì ìŽ ê·žë° ìŒìŽ ìŒìŽëë ê²ì ìíì§ ìëë€ë©Ž ... êžì; ê·žë° ë€ì ~"..." íì¶ íŽì¹ë¥Œ ì¬ì©íììì€. ê·žê²ìŽ ì íí 묎ìì ìíŽ ì¡Žì¬íëì§, ê²°êµ...
Less to CSSì ììŽëìŽ/êŽê³ë TypeScriptìì JavaScriptì ì ì¬í©ëë€. ìŠ, ì íší .css
ì .less
íê³ Less êž°ë¥ì ì¶ê°í ì ììµëë€. .js
ì .ts
íê³ TypeScript êž°ë¥ ì¶ê°ë¥Œ ììíë ë°©ë²ê³Œ ì ì¬í©ëë€. ì묎 ê²ë ì¶ê°íì§ ììŒë©Ž ìžìŽê° Ʞ볞 ìžìŽì ìì ì§í©ìŽêž° ë묞ì ëìŒí ì íší Less / JavaScriptê° ì¶ë ¥ëìŽìŒ í©ëë€.
ê·žë¬ë CSSì ìŽë¬í ë¹ìš ëë êž°í /
ì ìì ê²œì° Lessë Ʞ볞ì ìŒë¡ ìŽë¯ž ê²ìŽížìì ë°ë¡ ì€íší©ëë€. ì묎 ê²ë ë³ê²œíì§ ììëëŒë ìŒë° CSSë ììì ìŒë¡ ë€ë¥ž 결곌륌 ê°ì§ Less ìí ííììŽ ë©ëë€. ê·žê²ì ìžìŽì ê³ìœì ìë°í©ëë€. .less
륌 ìì í ë€ë¥ž Less ííììŒë¡ ë³ê²œíì¬ ììí ìë CSS륌 ëë늎 ì ìë€ë ê²ì ìì ì ëì¹ë ê²ì
ëë€. ê·ž ìì
ì ì ë íìíì§ ììµëë€. Lessë ì²ìì ê°ì§ê³ ìë ì íší CSS륌 ë€ì ì»êž° ìíŽ ì íší CSS륌 íží ê°ë¥í Less ííììŒë¡ ë³ê²œíëë¡ ì구íŽìë ì ë©ëë€. ê³ ì¥ë 몚ëžìŒ ë¿ì
ëë€.
calc()
ìë ëìŒí ë
ŒëŠ¬ê° ì ì©ë©ëë€. ì, ííìì 묞ììŽë¡ ìŽì€ìŒìŽíí ì ìì§ë§ ê·žë ê² íŽìë ì ë©ëë€. .css
ë¡ ìŽëŠìŽ ë³ê²œë .less
ë ëìŒí íšê³Œì ìž CSS륌 ìì±íŽìŒ í©ëë€. ìŽê²ì ìë ì€íìŒìížë¥Œ ê°ì/ë®ìŽì°êž°/곌ëíê² íŽìíì§ ìë ê²ìŽ íë¡ì ížì Ʞ볞 목íì¬ìŒ í©ëë€. ë€ë¥ž 몚ë ê²ì ì²ìì íì/ìžìŽë¥Œ ì¬ì©íë ê² ìžì ë€ë¥ž ì£ë¡ ìžíŽ ê°ë°ììê² ë¬žì 륌 ížìíë €ê³ í©ëë€.
ì, ííìì 묞ììŽë¡ ìŽì€ìŒìŽíí ì ìì§ë§ ê·žë ê² íŽìë ì ë©ëë€. .lessë¡ ìŽëŠìŽ ë³ê²œë .cssë ëìŒí íšê³Œì ìž CSS륌 ìì±íŽìŒ í©ëë€. ìŽê²ì ìë ì€íìŒìížë¥Œ ê°ì/ë®ìŽì°êž°/곌ëíê² íŽìíì§ ìë ê²ìŽ íë¡ì ížì Ʞ볞 목íì¬ìŒ í©ëë€. ë€ë¥ž 몚ë ê²ì ì²ìì íì/ìžìŽë¥Œ ì¬ì©íë ê² ìžì ë€ë¥ž ì£ë¡ ìžíŽ ê°ë°ììê² ë¬žì 륌 ížìíë €ê³ í©ëë€.
ì ê².
LESSë /
ê° íì©ëë ìì¹ì CSSìì íì©ëì§ ìë ìì¹ë¥Œ ìê³ ììµëë€. ê·žë ì§ ìì§ë§ ìŽìšë ëíëë ê²œì° ìíìŽ ìë£ëìŽìŒ íë€ê³ ê°ì íŽìŒ í©ëë€. ëí ìíìŽ ë¥ê·Œ êŽížë¡ ëë¬ìžì¬ ìë ê²œì° CSSìì ë¥ê·Œ êŽížê° íì©ëì§ ìë ê²œì° LESSë¡ íŽìíŽìŒ í©ëë€.
ë€ì ë§íŽì, LESSë ì íší CSSì ëë¬íêž° ìíŽ ê°ë¥í í ì ì ìì ìíì íŽìíë €ê³ ë žë ¥íŽìŒ í©ëë€. ì¶ë ¥ìŽ ì íšíë©Ž ë ìŽì ìí ì€íì ì€ì§íììì€.
@thany
컎íìŒë¬ê° ìê³ ìë ê²ì ëí ê°ì ìŽ ë묎 ë§ìµëë€(ìŒë¶ë ëšìí í늜ëë€).
ìŽë 쪜ìŽë "ë¥ê·Œ ëêŽíž" 몚ëë --sm=on
ê° íë ê²ê³Œ ê±°ì ê°ìŒë¯ë¡ ìŽë¥Œ ì¬ì©íê³ ìŽ ì€ë ëë ììŽë²ëŠ¬ììì€(ëë¶ë¶ calc
ìžì íë¡ì ížìì ìíì ì¬ì©íì§ ìì ê°ë¥ì±ìŽ ëìµëë€ Lessê° ì€ê³ë ì§ ëª ë
í) ê·žëì ì¶ê° êŽížê° ìŒë§ë ì§ìŠëëì§ ì ì ììµëë€. íì§ë§ ë€ë¥ž ì¬ëë€ì ê·žë ìµëë€.)
ëëšžì§ë https://github.com/less/less.js/issues/1880#issuecomment -345194431ì ì°žì¡°
@seven-phases-max /
ë background
ë° border-radius
ìêž°, ê·žëŠ¬ê³ ìë§ë ì§êž ìê°íì§ ìë ë€ë¥ž ê²ë€ìë ìë¯žê° ìë€ë ê²ì ìì§ ë§ììì€. LESSë ê·žê²ë€ì íëì ë¶ìë¡ êž°ìê² ìê°í©ëë€. ì격í ìí 몚ëê° ìë ìë LESSë ì첎ì ìž ìì ìíì "ë©ì¶°ìŒ í ë륌 ìììŒ" í©ëë€.
@thany
LESSë ìì ì ìì ìíì "ë©ì¶°ìŒ í ë륌 ìììŒ" í©ëë€.
ìë, ê·žë¬ë©Ž ì ëë€. ë¶í ì¬ëìê° ìë 믞ë CSS ìœìŽê° ìŽëì ëíë ì§ ì ì ìë ë°©ë²ìŽ ììµëë€. Less 컎íìŒë¬ê° ìŽì ëíŽ 'ìê²' íë ê²ì 귌볞ì ìŒë¡ ê²°íšìŽ ìë ì ê·Œ ë°©ììŽë©° ìŽ í ë¡ ìì ì룚ì ì ì°ŸìŒë €ê³ ìëíë ë°ë¡ ê·ž ê²ì ëë€.
ì§êžê¹ì§ ëëêž° ì°ì°ìë¡ /
ëíŽ ì ì ì ìŽê³ ììž¡ ê°ë¥í ë ê°ì§ ì íìŽ ììµëë€.
--strict-math=on
ëìììì ê°ìŽ ê²°ì ë ì/ìì ì ììµëë€.(ëí Less ìŽëŠì ì² ìê° ë ìŽì ë묞ìë¡ íìëì§ ììµëë€.)
/ ëí backgroundì border-radius ìêž°ìì ìë¯žê° ìë€ë ê²ì ìì§ ë§ììì€.
ìŽê²ì Ʞ볞ì ìŒë¡ ìŽ ì€ë ëê° ììíë ê²ì
ëë€.
ê·žëŠ¬ê³ https://github.com/less/less.js/issues/1880#issuecomment -345194431ìì ì ìë ë³ê²œ ì¬íì ììœì ì°žì¡°íììì€(컎íìŒë¬ê° ìììŒ íê±°ë ìììŒ íë ê°ì ìì).
ìë, ê·žë¬ë©Ž ì ëë€. ë¶í ì¬ëìê° ìë 믞ë CSS ìœìŽê° ìŽëì ëíë ì§ ì ì ìë ë°©ë²ìŽ ììµëë€. Less 컎íìŒë¬ê° ìŽì ëíŽ 'ìê²' íë ê²ì 귌볞ì ìŒë¡ ê²°íšìŽ ìë ì ê·Œ ë°©ììŽë©° ìŽ í ë¡ ìì ì룚ì ì ì°ŸìŒë €ê³ ìëíë ë°ë¡ ê·ž ê²ì ëë€.
ëë ìŽê²ì ìì í ëìí©ëë€. @thany ë¹ì ì ëŽê° ìŽ ê²ì ìžì©í ê²ì ëìíì§ë§ ëŽê° ëŽëŠ° ê²°ë¡ ê³Œ ë€ë¥ž ê²°ë¡ ì ëë¬íê³ ììµëë€. ì ê²ë "ìíì ì€ëš"íŽìŒ í ëì ì ì ììµëë€. ëŽê° ë§íê³ ì¶ì ê²ì ëžë ìŽí¹ 첎ìžì§ê° 뚌ì ìíì ììíë ê²ì ëíŽ Lessê° ë 볎ìì ìŽìŽìŒ íë€ë ê²ì ëë€(믞êµ/ìºëë€ì£Œì륌 ì¬ì©íêž° ìíŽ).
@rjgotten
ìë €ì§ ìí 컚í ì€íž ëŽì ìì§ ìë í ëëêž° ì°ì°ìë¡ ì·šêžíì§ ë§ììì€.
ìë €ì§ ìí 컚í ì€ížê° íì¬ --strict-math=on ëìììì ê°ìŽ ê²°ì ë ì ìê±°ë ê²°ì ë 겜ì°.
ëª íííêž° ìíŽìŽ ë¶ë¶ (ëë ëìí©ëë€) :
ìë €ì§ ìí 컚í ì€íž ëŽì ìì§ ìë í ëëêž° ì°ì°ìë¡ ì·šêžíì§ ë§ììì€.
ì€ì ë¡ 4 ê°ì§ ê°ë¥í ì룚ì ìŽ ììµëë€. ìê³ ìì§ë§ ì€ë ëì ëíŽ ë€ì ììœíë©Ž ë€ì곌 ê°ìµëë€.
strictMath
)ë¡ ì¬ì©í ì ìì§ë§ êŽì°®ìµëë€../
ë¡ ìžìëì§ ìë í12px/4px
ìžíŽ ëëì
ìŽ ë°ìíì§ ìëë¡ ìíì ìì íììì€. (ê³±ì
곌 ëëì
ì ëšìê° ìë ê°ë§ ì¬ì©í©ëë€.) ìŠ, 몚ë ê³³ìì ëëì
ì ìííì§ë§ íšì¬ ë 볎ìì ìž ê·ì¹ì ë°ëŠ
ëë€. 묞ì ê° íŽê²°ëì§ ììŒë©Ž ë€ì íì¶ì ìì§íììì€. ë°ëŒì ìì í ì룚ì
ì ìëì§ë§ íì¬ ìí©ì ëí (ë
ŒìŠì ì¬ì§ê° ìë) ê°ì ì¬íì
ëë€.ì¬ì©ì± êŽì ìì ì ë #4
ììì ê°ìŽ ìíì "ë ëëíê²" ë§ëë ê²ì ì¢ìí©ëë€. ìì§ëìŽë§ ë° ì ì§ êŽëŠ¬ êŽì ìì, ê·žëŠ¬ê³ í¥í CSS ë³ê²œìŒë¡ë¶í° 볎ížíêž° ìíŽ ì ë #3
ê° ê°ì¥ ê°ë ¥í ì룚ì
ìŒë¡ ë§ìì ëëë€.
ê·žë¬ë ì€ì ë¡ë calc()
륌 ìì íêž° ìíŽ #3
AND #4
륌 100vh - 12px
ë Less(êŽíž ì¬ë¶)ì ìíŽ ê±Žëë €ìë ì ë©ëë€. ê·žë¬ë IMOë 12px/4px
(êŽíž ì¬ë¶)륌 ì¬ì©íŽìë ì ëì§ë§ ì ë ê·ž ë¶ë¶ìì ìììŒ ì ììµëë€.
ê·žëì ì ë ìŽê²ì "CSS 구묞곌 충ëíë ìí" 묞ì ë¡ ë³Žì§ ìê³ , Lessê° ì²ìë¶í° ìí ë°©ì ìì ì¡°êž°ì íŽê²°íë ë° ì§ëì¹ê² 공격ì ìŽëŒê³ ìê°í©ëë€.
ëšìê° ìë ê°ìŒë¡ë§ ââê³±ì 곌 ëëì ì ìíí©ëë€.
ë€ì곌 ê°ì ê²ë€ìŽ ìêž° ë묞ì ížëŠì ìííì§ ìì ê²ì ëë€.
font: small-caps bold 24px/3 ...;
lost-column: 1/3;
// etc.
ê·žëŠ¬ê³ ê·žë€ì divê° ìëëë€.
ê·žë¬ë ì€ì ë¡ë
calc()
륌 ìì íë €ë©Ž#3
ë°#4
륌
calc()
ë ê³ íµì
ëë€. ììŽë¬ëíê²ë ê·žê²ì _ìë§ë_ ì€ì Less íšìë¡ êµ¬ííšìŒë¡ìš ê°ì¥ ì íŽê²°ëë©°, ìŽìì ìŒë¡ë 구묞 ë¶ìë ííì ížëŠ¬ë¥Œ ì·šíê³ ííìì ëšìííë €ê³ ìëí ê²ì
ëë€. ìŠ: 4px + 12px
(ëë @a
ì íœì
ê°ìŽ ìë ê²ìŒë¡ ìë €ì§ ê²œì° 4px + @a
ì ê°ì íží ê°ë¥í êµ¬ì± ìì륌 믞늬 ê³ì°íê³ ê²°í©íŽìŒ íì§ë§ ížíëì§ ìë êµ¬ì± ììë ê·žëë¡ ë¡ëë€. ížíëì§ ìë ì ë곌 íšê», ëšë
ìŒë¡.
ì
<strong i="17">@a</strong> : 4px;
<strong i="18">@b</strong> : 2;
width : calc(100%/<strong i="19">@b</strong> - 10px + @a);
ê²°êµ ë ëë§íŽìŒ
width : calc(50% - 6px);
(https://github.com/less/less.js/issues/1880#issuecomment-345345735ìì ë°ë³µ)
ê·žëŠ¬ê³ calc
ëŽë¶ì ííìì ìµì ííêž° ìíŽ ì»ŽíìŒë¬ë¥Œ 곌ëíê² ìì§ëìŽë§íë ê²ì ìŽì ì ë³Žì§ ëª»íìµëë€. calc
륌 ìì±íê³ ìë€ë©Ž ëžëŒì°ì ìì ꞎ ííììŽ ë¬ŽììŽë ìêŽììŽ ìì
ì ìíí ì ììµëë€. ê·žëì ììì ìŽë¯ž ìžêžíë¯ìŽ ì ë " calc
ëŽë¶ì ì묎 ê²ë 걎ëëŠ¬ì§ ë§ììì€"(= ì€ì ë¡ íìí ê²ë³Žë€ ë ëëíë €ê³ ìëíì§ ë§ììì€). ëžëŒì°ì ( ëë css-minifier ìŽí , ëŽê° ì¬ë°ë¥Žê² êž°ìµíë€ë©Ž, ê·žë€ ì€ ìŒë¶ë ìŽë¯ž calc íì ííì ìµì íì ꜀ ì¢ì ìŒì íê³ ììµëë€.
"smart unit behavior mamabo-jambo"ë min/max
ꎎ묌ì ë ì¬ëŠ¬ê² í©ëë€(ì ì§í ì ìê³ í ë²ë ì¬ì© íì§ ìì ìœëì ë¶íë €ì§ ì€í) - ë¹ì "units mambo"ì ëíŽ ë¹ëª
ì ì§ë¥Žì§ ìì ê²ì ìŒë§ë íííëì§ , ì€ (ê·žëì ëë "íŒì°ì°ì ëšìì ë°ëŒ ë€ë¥ž ì°ì°ì ì믞"ëŒë ììŽëìŽê° ìì í ì¬ëŒì§ ëê¹ì§ ì¬êž°ìì ê³ì ì§ì§ê±°ëŠŽ ê²ì
ëë€ :P).
ì¶ì calc
ê° ì°ì íê°ê° ìë ííìì ìì íë íšìê° ëì ë§ì(ìŽìšë ê·žëìŒ í ê²ì
ëë€) íë¬ê·žìžì ìì±íê³ ìíë ìµì íë¡ ìŽë¥Œ ë첎í ì ììµëë€.
@rjgotten
Less 컎íìŒë¬ê° ìŽì ëíŽ 'ìê²' íë ê²ì 귌볞ì ìŒë¡ ê²°íšìŽ ìë ì ê·Œ ë°©ìì ëë€.
귌볞ì ìŒë¡ ì³ì ì ê·ŒìŽëŒê³ ìê°í©ëë€. LESSë CSSì ëí 컎íìŒë¬ìŽë¯ë¡ LESSê° ì»ŽíìŒ ëìì ëíŽ ìê³ ìë€ë ê²ì ìžì 몚ë ìë¯žê° ììµëë€.
@matthew-dean
ì ê²ë "ìíì ì€ëš"íŽìŒ í ëì ì ì ììµëë€. ëŽê° ë§íê³ ì¶ì ê²ì ëžë ìŽí¹ 첎ìžì§ê° 뚌ì ìíì ììíë ê²ì ëíŽ Lessê° ë 볎ìì ìŽìŽìŒ íë€ë ê²ì ëë€(믞êµ/ìºëë€ì£Œì륌 ì¬ì©íêž° ìíŽ).
ë§íìë©Ž ë€ë¥ž 쪜ìì ìê°íë ê²ìŽ í¥ë¯žë¡ìµëë€. ì ê° ì ìíë ëŽì©ì ë€ì곌 ê°ìµëë€.
background: url(...) no-repeat 50% 50% / 40px + 10px 40px;
ì¬êž°ì LESSê° íŽìŒ í ìŒì ëìê² ë¶ëª í©ëë€.
background: url(...) no-repeat 50% 50% / (40px + 10px) 40px;
륌 ìŒêž°íë:
background: url(...) no-repeat 50% 50% / 50px 40px;
ì¬êž°ì 50% / 50px
ë¶ë¶ì ââê³ì°íŽìë ì ë©ëë€. (1) ížíëì§ ìë ëšì ë묞ì ë¶ê°ë¥íê³ (2) background
ê°ì ëíŽ ìŽë¯ž 충ë¶íêž° ë묞ì
ëë€. . ì¬êž°ìì "ìíì ì€ëš"í ê²ì
ëë€.
ê·žê²ìŽ ëŽê° "ë©ì¶°ìŒ í ë륌 ìë ê²"ìŽ ââì믞íë ë°ì ëë€.
ë€ì곌 ê°ì ë€ë¥ž ìì±ìŽììµëê¹?
padding-left: 50% / 10px + 5px;
ì€ë¥(ížíëì§ ìë ëšì)ì íšê» ì€ëšëìŽìŒ í©ëë€. ê°ë¥í ì¶ë ¥ ì€ íëë ìŽ ìì±ì ëíŽ ì íšíì§ ìì 50% / 15px
ì
ëë€. ë ë€ë¥ž 결곌ë íì¬ ìíí 5%
ì ììŒë©° ìŽë 몚ë ë°©í¥ìì ì못ë ê²ì
ëë€.
ê·žëŠ¬ê³ :
padding-left: 50px / 10px + 5px;
결곌:
padding-left: 10px;
ììëë¡. ë°ëŒì ìŽ ê²œì° /
ë padding-left
ëíŽ ì íšíì§ ììŒë©° LESS ë¡ ê°ì žìì ìíì ìíí©ëë€.
@matthew-dean
ì€ì ë¡ 4 ê°ì§ ê°ë¥í ì룚ì ìŽ ììµëë€. ìê³ ìì§ë§ ì€ë ëì ëíŽ ë€ì ììœíë©Ž ë€ì곌 ê°ìµëë€.
íë ë:
5) LESSì ëëì
ìë \
ì°ì°ì륌 ì¬ì©íê³ /
ì¬ì©íì¬ ë ìŽì ì¬ì©íì§ ììµëë€. MATLABìë ìŽì ì ì¬í ê²ìŽ ììŒë©° BASICì í¹ì ë§ì ì ì ëëꞰ륌 ê°ì ë¡ ì¬ì©íë ë° ì¬ì©íìµëë€. ë°ëŒì ë°±ì¬ëì륌 ì¬ì©íë ê²ìŽ ìì í ë€ìŽë³ž ì ìŽ ìë ê²ì ìëëë€.
/ížì§íë€
ëí í€ë³Žëì ÷
í€ë¥Œ í¬íšíëë¡ ë¡ë¹íê³ ìŽë¥Œ ëëì
ì°ì°ìë¡ ì¬ì©í ìë ììµëë€. ìŽë±íêµ ë ë°°ì ë ëŽì©ìŽìì :)
ê·íê° ì ìí ëŽì©ì ìŽë¯ž ì¬ë¬ ë² ë Œìëììµëë€(ì¬êž°ì ì°žì¡°ë ì€ë ë륌 죌ì íì§ ë§ììì€). ê·žëì ì¬êž°ì ìœê° ê²ìŒë¥ž ìê²¬ìŽ ììµëë€.
LESSì ëëì ì
\
ì°ì°ì륌 ì¬ì©íê³/
ì¬ì©íì¬ ë ìŽì ì¬ì©íì§ ììµëë€.
https://github.com/less/less.js/issues/1872#issuecomment -35245890
background
충ë¶í©ëë€ ...padding-left
ìë ì íšíì§ ììµëë€
"ì¬ë¬ë¶, ì ëžëŒì°ì /íŽëŠ¬í/ fnord
ìì±ì ëí ì§ììŽ ì¶ê°/ì
ë°ìŽíž/íì¥ë 몚ë ê², ì 륌 ìíŽ ìë¡ìŽ Less ë²ì ì ì¶ìíŽ ì£Œìê² ìµëê¹?"륌 ë§ë볎ììì€. 묞ì .
font
묞ì 륌 ë§ë볎ìžì.
ë± ë±
êžìì, @rjgottenì ìŽë¯ž ììì ì ê·žë° ì¢
ë¥ì "ì§ì"ìŽ ì묎ë°ë ê°ì§ ìë êžžìŽëŒê³ ìžêžíìµëë€.
@seven-phases-max
ë°±ì¬ëìë ì ìì ë¶ê³Œíìµëë€. ëëêž°ì ?
륌 ì¬ì©í ìë ììµëë€. ê·žê²ì ì ë§ ì€ìíì§ ììµëë€. ëŽê° ì ìíë ê²ì ë§€ì° ë€ë¥Žê³ 몚íží ì믞륌 ê°ì§ íëì 묞ì( /
)륌 ì¬ì© íì§ ìë ê²ì
ëë€.
"ì¬ë¬ë¶, ëŽ ëžëŒì°ì /íŽëŠ¬í/
fnord
ìì±ì ëí ì§ììŽ ì¶ê°/ì ë°ìŽíž/íì¥ë 몚ë ê², ì 륌 ìíŽ ìë¡ìŽ Less ë²ì ì ì¶ìíŽ ì£Œìê² ìµëê¹?"륌 ë§ë볎ììì€. 묞ì .
CSSë ì ì ìë íì€ì
ëë€. íì€ ìŽìžì ê²ì ì§ìíŽìë ìë©ëë€. ê·žê²ìŽ ë¹ì ì 묞ì ì
ëë€. fnord
ìì±ì íì€ì ìŒë¶ê° ìëë¯ë¡ ì§ìíŽìë ì ë©ëë€. ìŽ ìë¡ìŽ ì§ì ëì§ ìì ìì±ìŽ ë°ìíë©Ž LESSë Ʞ볞 ëììŒë¡ íŽë°±í ì ììµëë€. íì¬ ëììŽê±°ë, êŽížê° íìíê±°ë, 몚ížíì§ ìì í 묎ììŽë ë©ëë€.
êžêŒŽ 묞ì 륌 ë§ë볎ìžì.
êžêŒŽ 묞ì ë LESSì ì ëì ìž ììë¶í° /
묞ì ê° ì¡Žì¬íìì ìŠëª
í©ëë€. background
ì background-size ê°ì í¬íší ì ìë êž°ë¥ìŽ ìê±°ë border-radius
ê° ë°ìíì ë ë¿ë§ìŽ ìëëë€. Tbh, êžêŒŽ 묞ì 륌 ìžêžíšìŒë¡ìš ë¹ì ì ë¹ì ìì ì ëíŽ ê°ì¥ ì¢ì 죌ì¥ì íŒì³€ìµëë€. :)
Tbh, êžêŒŽ 묞ì 륌 ìžêžíšìŒë¡ìš ë¹ì ì ë¹ì ìì ì ëíŽ ê°ì¥ ì¢ì 죌ì¥ì íŒì³€ìµëë€. :)
ëë ë¹ì ìŽ ëê°ë¥Œ ì못 ìŽíŽíê³ ìë€ê³ ìê°í©ëë€. ì²ìì /
륌 div ì°ì°ìë¡ ìì í ì ê±°íìê³ ì ìí ì¬ëì ì ììµëë€. ë°ëŒì ëëšžì§ í목ì ëíŽìë ê·íê° ìëµí ëŽì©ì 죌ì륌 êž°ìžìŽì§ ìë ê²ê³Œ ëìŒí 묞ì ëŒê³ ìê°í©ëë€.
CSSë ì ì ìë íì€ì ëë€.
TR ìì€ìì ìì í ì±ìíŽì§ ì¬ì ë¶íì ê³ ìíë €ë ê²œì° ê·žëŽ ìë ììµëë€.
ê·žë ì§ ììŒë©Ž? ìëì. ìë¡ìŽ CSS '몚ë'ì ìì± ì¬ì곌 맀죌ë ìëëëŒë ìë¡ ì¶ê°ë êž°ì¡Ž 몚ëì ìì ë²ì ìŽ íìë©ëë€.
@seven-phases-max
ë€ì곌 ê°ì ê²ë€ìŽ ìêž° ë묞ì ížëŠì ìííì§ ìì ê²ì ëë€. font: small-caps bold 24px/3 ...
ìë, ìê² ìŽ. ëŽ ìì ì ë°ë¡ ë€ì곌 ê°ìµëë€. unit-less only div/multiplicationì 묞ì 륌 ì€ìŽì§ë§ 묞ì 륌 íŽê²°íì§ë 못í©ëë€.
ê·žëŠ¬ê³ ìŒë°ì ìŒë¡ 몚ë ë¶ë¬žì ëí ./
ì ì ìì ì¬ì í ââë§€ì° ë
ŒëŠ¬ì ìŒë¡ 볎ì
ëë€.
@thany 몚ë 구첎ì ìž ìì ââìëµíêž° 볎ë€ë ìŒë°ì ìŒë¡ Less Math륌 ë ëëíê² ë§ë€ë €ë ë žë ¥ìŽ ê³µì ë€ë¥ž ìŒë ëŒìžìŒë¡
ê·žëŠ¬ê³ calc ëŽë¶ì ííìì ìµì ííêž° ìíŽ ì»ŽíìŒë¬ë¥Œ 곌ëíê² ìì§ëìŽë§íë ê²ì ìŽì ì ë³Žì§ ëª»íìµëë€. calc륌 ìì±íê³ ìë€ë©Ž ëžëŒì°ì ìì ꞎ ííììŽ ë¬ŽììŽë ìêŽììŽ ìì ì ìíí ì ììµëë€. ê·žëì ììì ìŽë¯ž ìžêžíë¯ìŽ ëë "calc ëŽë¶ì ì묎 ê²ë ë§ì§ì§ ë§ììì€"(= ì€ì ë¡ íìí ê²ë³Žë€ ë ëëíŽì§ë €ê³ ìëíì§ ìì)íê³ ëžëŒì°ì 륌 ìíŽ ëšê²šëììµëë€(ëë ëŽê° ì¬ë°ë¥Žê² êž°ìµíë€ë©Ž css-minifier륌 ìíŽ , ê·žë€ ì€ ìŒë¶ë ìŽë¯ž calc íì ííì ìµì íì ꜀ ì¢ì ìŒì íê³ ììµëë€.
ëë ìŽê²ì ì ì ìŒë¡ ëìí©ëë€. calc()
íì© ëª©ë¡ì ì¶ê°íë©Ž ìë¡ìŽ ìí êŽë š 묞ì ì 99%륌 ì ê±°í ì ììµëë€. Lessê° calc()
묞ì 륌 íŒíêž° ìíŽ ìíì ë íëª
íê² ìíí ì ìë ëª ê°ì§ ë°©ë²ì ì ìíì§ë§(ë¹ì°í ê·žëìŒ í ìë ìì) ìŽê²ìŽ ìŽ ììŽëìŽì ëí ë
ŒììŒë¡ íŽìëìë€ë©Ž ì¬ê³Œë늜ëë€. ì ë ìŽê²ì ì§ì§í©ëë€.
ì ìŒí 죌ì ì¬í(ì¬êž°/ë€ë¥ž ê³³ìì ë
Œìëš)ì ê°ë°ìê° íì°ì ìŒë¡ calc()
ë³ì륌 ì¬ì©íꞰ륌 ìí ê²ìŽë¯ë¡ vars륌 ê³ì êµì²Žíëë¡ ì£ŒìíŽìŒ íì§ë§ íì§ ë§ììì€. ìí. ìŒë§ë ìŽë €ìŽ ìŒìžì§ 몚ëŠ
ëë€. ê·žë ê² í ì ìë€ë©Ž ì€ë calc()
ì²ëŠ¬ ë³ê²œì ì§ìíê² ìµëë€.
@thany
êžêŒŽ 묞ì ë LESSì ì ëì ìž ììë¶í° / 묞ì ê° ì¡Žì¬íìì ìŠëª í©ëë€.
ìŽê²ì ì¬ì€ìŒ ì ìê³ ì ë¹í ì§ì ìŽì§ë§ ë§ì ì ì í íŽê²° ë°©ë²ìŽ ììê³ font
ìì± ìœìì ì¬ì©íë ê²ìŽ ë°ëì íì€ êŽíì ìëììµëë€. Lessê° ììë í ì¬ë¬ 배겜곌 calc()
ê° ëì°©íêž° ë묞ì ìŽê²ìŽ ë 묞ì ê° ëììµëë€. ìŽì CSS Grid 구묞ì ìŽì ìŒìì ìž ì€ì ì©ìŽìì ì²ììë ì¡Žì¬íì§ ììë ë§ì 충ëìŽ ììì ì믞í©ëë€.
ë§ë¶ì¬ì, ìŽê²ìŽ Sassê° ë¬žì 륌 íŽê²°íë ë°©ë²ìŽë©° ìŽ ììì ì€ëª í©ëë€.
p {
font: 10px/8px; // Plain CSS, no division
$width: 1000px;
width: $width/2; // Uses a variable, does division
width: round(1.5)/2; // Uses a function, does division
height: (500px/2); // Uses parentheses, does division
margin-left: 5px + 8px/2px; // Uses +, does division
font: (italic bold 10px/8px); // In a list, parentheses don't count
}
Less íšìì ëí ìžì ëŽìì (íì¬) ìíì í ì ìê³ Less íšìë íœì
ê°ì ë°íí ì ìêž° ë묞ì font: print10px()/8px
ìëëë€. ìŽë€ ì¢
ë¥ì ì ììŽ ìëëŒ ì€ëª
ì ìíŽ ë¶ì¬ë£ë ê²ë¿ì
ëë€. ê·žë€ìŽ ìŽë»ê² 묞ì ì ì ê·Œíëì§ í¥ë¯žë¡ìµëë€.
ê°ìžì ìŒë¡, ëë ê°ë°ìë€ìŽ ë§ë² ííìì ì¡Žì¬ë¥Œ êž°ë°ìŒë¡ ìíìŽ ìŽë€ 겜ì°ì ë°ìíëì§ êž°ìµíëë¡ ë§ëë ê²ì ìŒì¢
ì ë¯žì¹ ì§ìŽëŒê³ ìê°íì§ë§(ì: +
?) .
ê°ìžì ìŒë¡, ëë ê°ë°ìë€ìŽ ë§ë² ííì ì¡Žì¬ë¥Œ êž°ë°ìŒë¡ ìíìŽ ìŽë€ 겜ì°ì ë°ìíëì§ êž°ìµíê² ë§ëë ê²ì ìŒì¢ ì ë¯žì¹ ì§ìŽëŒê³ ìê°í©ëë€.
+1
"ì룚ì
"ìŽ lessc --sm
ê° ìŽë¯ž ìííë ê² ìžì ì¬êž°ìì ë
Œìë 묞ì ì€ ìŽë ê²ë íŽê²° ê·žëŠ¬ê³ 1/2
ì $var/2
ëí ë€ë¥ž 결곌ë ì ë§ ëëìµëë€ ... ~ë°ë³Ž ~ "ìŠê±°ìŽ ëë²ê¹
, íšì!"
@matthew-dean
ë§ë¶ì¬ì, ìŽê²ìŽ Sassê° ë¬žì 륌 íŽê²°íë ë°©ë²ìŽë©° ìŽ ììì ì€ëª í©ëë€.
ìŽë ë€ë¥ž ìŽìììê² ìì§íì§ ìê³ ë íë¥í ì룚ì
ì
ëë€.
ííììŽ ì íší CSSìŒ ê²œì° ê·žëë¡ ëììì€.
ê°ìžì ìŒë¡, ëë ê°ë°ìë€ìŽ ë§ë² ííì ì¡Žì¬ë¥Œ êž°ë°ìŒë¡ ìíìŽ ìŽë€ 겜ì°ì ë°ìíëì§ êž°ìµíê² ë§ëë ê²ì ìŒì¢ ì ë¯žì¹ ì§ìŽëŒê³ ìê°í©ëë€.
ëìíì§ ìëë€. ìŽê²ì ëšìí ê·ì¹ ì§í©ìŒë¡, êž°ìµíŽìŒ íë ë€ë¥ž ê·ì¹ ì§í©ê³Œ ë€ë¥Žì§ ììµëë€.
ìíìŽ ì믞 ììŽ ë°ìíë ëª ê°ì§ ê·¹ëšì ìž ê²œì°ê° ìì§ë§ êŽížë§ ì ì©íë©Ž ëì ëë€.
"ì룚ì "ìŽ lessc --smìŽ ìŽë¯ž íë ê² ìŽììŒë¡ ì¬êž°ìì ë Œìë 묞ì ì€ ìŽë ê²ë íŽê²°íì§ ëª»íë€ë ê²ì ê³ì°íì§ë ììµëë€. ëŽê° ìíë ê²ìŽ ëëì ìŒ ë (1/2) ëì 0 + 1/2륌 ì°ë ìŽì ë 묎ìì ëê¹? ê·žëŠ¬ê³ 1/2ì $var/2ì ëí ë€ë¥ž 결곌ë 겜ìŽì ìŒë¡ íë¥í©ëë€... ìŽëŠ¬ìì "íŽíŒ ëë²ê¹ , íšì!" ë©ìžì§.
í, ì, ìŽê²ì ëë€.
@thany
ìŽë ë€ë¥ž ìŽìììê² ìì§íì§ ìê³ ë íë¥í ì룚ì ì ëë€.
ííììŽ ì íší CSSìŒ ê²œì° ê·žëë¡ ëììì€.
ì¡ìŽì ë¹ ì§ì§ë ìì§ë§ 구묞ìì ìŽì ì ìžìŽ ìŒêŽì± ë묞ì Lessììë ìëíì§ ììµëë€. ê·žê²ì ë Œìì ì¬ì§ê° ìë€ê³ ë§í ì ìë Sassìê²ë íë¥í ì ìì§ë§ ëììž êŽì ìì ê°ìžì ìŒë¡ ê·ž íë¡ì ížì êŽì¬íì§ ììŒë¯ë¡ ëê° ë§í ì ììµëë€. ëŽê° ìë ê²ì í ìŽëžì ìë ìµì ìŽ ììíêž°ì ê°ì¥ ì¢ì ì¥ìëŒë ê²ì ëë€. ìŽ ë¬žì ì êŽë šë ë©ìì§ ì€ë ë륌 ìŽíŽë³Žê³ ìžìŽì ëíŽ ë§ì ìê°ì í ì íë€ë©Ž ê°ì ê²°ë¡ ì.
ì°ëŠ¬ê° íŒí ì ìë í ê°ì§ êŽì°°: ì íší ë°ëëŒ CSS륌 ê°ì žì€ë©Ž ì¶ë ¥ìŽ êž°ë¥ì ìŒë¡ ëìŒíŽìŒ í©ëë€. ë°ëŒì ëŽê° 귞늎 ì ìë ì ìŒí ê²°ë¡ ì LESSê° ìŽë¯ž ì íší CSSìŒ ê°ë¥ì±ìŽ ìë ííìì 걎ëë €ìë ì ëë€ë ê²ì ëë€. ìŽ ìì ì ìííë ë°©ë²ì ëìê² ë¬ë € ìì§ ììµëë€. ê·žë¬ë ë°ëëŒ CSS륌 ê°ì žì€ë ê²ì ì 뢰í ì ìë€ë ì¬ì€ìŽ ëšì ììµëë€. ëë¶ë¶ LESSê° ë¶í ì ë묎 ìŽì±ì ìŒë¡ ì€ííêž° ë묞ì ëë€.
Sassìì ë°ëëŒ CSS륌 ê°ì žì€ë ê²ì ì¬ì€ì ì벜íê² ìëí©ëë€. ë§íë¯ìŽ Sassë ëª ê°ì§ ê°ëší 구묞 ê·ì¹ì ë°ëŒ 컎íìŒë¬ìê² ê°ì ìì
ì ìííëë¡ ì§ìíì§ ìë ê²œì° /
ì°ì°ì륌 ê·žëë¡ ë¡ëë€. ìŽ êµ¬ë¬ž ê·ì¹ì ì íší ë°ëëŒ CSSìì ë°ìí ì ìë ë¶í ì ê°ì íë ë°©ë²ì ì€ëª
íë©° ìŽê²ìŽ ë°ìŽë ìŽì ì
ëë€.
ë¹ì ì ì¬ì í ââìì ì ìììŽ ìëëŒ ê·žë€ìŽ ë§íë ê²ê³Œ ë
Œìí©ëë€. ê°ëší ì§ë¬žì ëëµ : "ìŽë»ê² 0 + 1/2
ìë§ëë³Žë€ ë ì í ì ììµëë€ (1/2)
?". 100%-CSS ížíì±ìŽ êŽì¬ ìë ì ìŒí ê²œì° -sm
íê³ ìŽ ì€ë ëë ììŽë²ëŠ¬ììì€.
ì°ëŠ¬ê° íŒí ì ìë í ê°ì§ êŽì°°: ì íší ë°ëëŒ CSS륌 ê°ì žì€ë©Ž ì¶ë ¥ìŽ êž°ë¥ì ìŒë¡ ëìŒíŽìŒ í©ëë€. ë°ëŒì ëŽê° 귞늎 ì ìë ì ìŒí ê²°ë¡ ì LESSê° ìŽë¯ž ì íší CSSìŒ ê°ë¥ì±ìŽ ìë ííìì 걎ëë €ìë ì ëë€ë ê²ì ëë€. ìŽ ìì ì ìííë ë°©ë²ì ëìê² ë¬ë € ìì§ ììµëë€. ê·žë¬ë ë°ëëŒ CSS륌 ê°ì žì€ë ê²ì ì 뢰í ì ìë€ë ì¬ì€ìŽ ëšì ììµëë€. ëë¶ë¶ LESSê° ë¶í ì ë묎 ìŽì±ì ìŒë¡ ì€ííêž° ë묞ì ëë€.
ìŽ ë¶ë¶ì ëŽê° 볞ì§ì ìŒë¡ ëìíê³ , ìŽ ì€ë ëìì ê·ž ì ì ëíŽ ë§ì ëì륌 ì°Ÿì ê²ìŽëŒê³ ìê°í©ëë€. ëë¶ë¶ì ë¶ìŒì¹ë ì룚ì ì êŽí ê²ìŽë©° ê° ì룚ì ìë ë€ìí ë¶ìì©ìŽ ììµëë€.
ì ë ë€ì곌 ê°ì 죌ì ë³ê²œ ì¬íì ì°ì ì ìŒë¡ ì ì©í ê²ì ëë€.
./
ëì ë첎ì /
.12px./10px
ì¬ì í ì¡°êž ìŽìíŽ ë³Žì
ëë€.@seven-phases-max - ë°±ì¬ëì륌 ë€ì ì°Ÿê³ ì¶ìµëë€. ìŽì êŽë šíì¬ https://github.com/less/less.js/issues/1872#issuecomment -35245890ì ëíŽ ìžêží ê²ìŒë¡ ìê³ ììµëë€. ìí ííì ìŒë¶. ìëë©Ž ëŽê° íë žìµëê¹? ìŽëŠì ìŒë¶ë¡ ìŽì€ìŒìŽí 묞ìê° í¬íšë íšì ìŽëŠê³Œ ê°ì ìŽë¡ ì ìž ê²œì°ë¥Œ ìê°íŽëŒ ì ìë€ê³ ìê°íì§ë§ ì€ì ì¬ë¡ë³Žë€ ì§ì ìž ì°ìµì ë ê°ê¹ìµëë€. ìŽì€ìŒìŽíë ì íìë ì¬ë¬ ê°ì§ ìŽì ë¡ ìŒë°ì ìŒë¡ ì¬ì©ëì§ë§ ìì± ê°ììë ê·žëŽ ê°ë¥ì±ìŽ ê±°ì ìë ê²ì²ëŒ 볎ìŽê±°ë ê·¹ëšì ìž ê²œì° ìì¬ì (ìŽ í ì€ížë¥Œ ìŽì€ìŒìŽí ì²ëŠ¬) íŽê²° ë°©ë²ìŒë¡ ì€ëš/íŽê²°íë ê²ìŽ ì¢ìµëë€.
ëëì
ì ëšìŒ ë°±ì¬ëì륌 ì¬ì©íë©Ž ì€ì 충ëìŽ ë°ìí ì ìë€ë ì ì ì¡°êž ë ìŽíŽë³Œê¹ì? ëŽ ë³žë¥ë ì ìŽë€ \
죌ë³ì íì¬ ìí©ë³Žë€ 묞ì ê° /
, ê·žëŠ¬ê³ ë devì ì¹íì ìž ìŽìì
ëë€ ./
. ì°ëŠ¬ê° ì¡°ì¬ë¥Œ íê³ ê·žê²ìŽ ê°ë¥íë€ë ê²ì ë°ê²¬íë€ë©Ž, êŽíž ìì /
륌 íì©íë 컚í
ì€íž ì í ëì 몚ë ê³³ìì ì¬ì©íëë¡ ì£Œì ë³ê²œì í ì ììµëë€. ê·žë° ë€ì ë ê±°ì ì€ìì¹ë¡ /
륌 ì§ìí ì ììµëë€.
calc()
ë ë³ì êµì²Žë¥Œ ìíí ì ìì§ë§ ìí ííìì íê°íì§ ìëë¡ í¹ì ìŒìŽì€ì
ëë€.ëëì ì ëšìŒ ë°±ì¬ëì륌 ì¬ì©íë©Ž ì€ì 충ëìŽ ë°ìí ì ìë€ë ì ì ì¡°êž ë ìŽíŽë³Œê¹ì?
êžì, \anycharacter
ê° ì íší CSSìŽê³ ëëŠì ìë¯žê° ìë€ë 묞ì . ë¬Œë¡ ì€ì íë¡ì ížììë ê·žë° ìœë륌 ê±°ì ì°Ÿì ì ììµëë€(ì: \9
ê°ì íŽí¹ ì ìž). íì§ë§... ì°ëŠ¬ê° ê·ž ì¬ììê² ëš¹ìŽë¥Œ ì£Œê³ ì¶ìµëê¹? "ìŽ-ì€, ëŽ 100% ì íší CSSê° ì»ŽíìŒëì§ ìì"ì ìì íì¬ ëìŒí ì늬ì ë€ë¥ž "ìŽ-ì€"륌 ëì
íì¬ ìœê° ìŽìíê² ë€ëŠœëë€. :)
calc
êŽíŽìë ì°ëŠ¬ê° ì²ìë¶í° í©ìê° ììë ê² ê°ìµëë€. ë°ëŒì Ʞ볞ì ìŒë¡ ìì ëŽì¬ìê° ê·žê²ì 구ííꞰ륌 êž°ë€ëŠ¬ë ê²ë¿ì
ëë€. ìŽê²ì ì ë§ë¡ ì©ê°í ì¬ëì êŽí ê²ì
ëë€ - ì¬ìí 구í ìžë¶ ì¬íì ë€ë¥Œ ì ìì§ë§ íë¡ìžì€ìì ê²°ì íë ê²ìŽ ì¢ë€ê³ ìê°í©ëë€.
ì, \anycharacterê° ì íší CSSìŽê³ ê³ ì í ìë¯žê° ìë€ë 묞ì ì ëë€. ë¬Œë¡ ì€ì íë¡ì ížììë ê·žë° ìœë륌 ê±°ì ì°Ÿì ì ììµëë€(ì: \9ì ê°ì íŽí¹ ì ìž). íì§ë§... ì°ëŠ¬ê° ê·ž ì¬ììê² ëš¹ìŽë¥Œ ì£Œê³ ì¶ìµëê¹? "ìŽ-ì€, ëŽ 100% ì íší CSSê° ì»ŽíìŒëì§ ìì"ì ìì íì¬ ëìŒí ì늬ì ë€ë¥ž "ìŽ-ì€"륌 ëì íì¬ ìœê° ìŽìíê² ë€ëŠœëë€. :)
ë€ìŽë³Žë ížë ìŽë ì€í ê°ë¥ì±ìŽ ììµëë€. ê·žëŠ¬ê³ ì, \anycharacter
ê° ì íší CSSëŒë ê²ì ìê³ ììµëë€. ëë ê·žê²ìŽ ë ëì ížë ìŽë ì€í ìžížìžì§ ê¶êží©ëë€. ëšì§ 12px./10px
ìŒì ë 묞ë²ì ìŒë¡ ìŽìíê² ë껎ì¡ì ë¿ì
ëë€. Lessë 충ëì ìŒìŒí€ì§ ìê³ ê°ë¥í í CSSì ì©ë륌 ë³ê²œíë €ê³ ìëí ê² ê°ìµëë€.
ì륌 ë€ìŽ ./
ë 구묞 ëª
íì±ì ì ê³µíê³ ì¶©ëì ìì í ë°©ì§íì§ë§ ìíì ëí 몚ë ê³³ìì êŽížë¥Œ ì ì©íêž° ë묞ì ì§ìíì§ë§ ë°ë°ìŽ ììê³ ì¬êž°ìì ê±±ì ë©ëë€. ê·žë ë€ë©Ž \10
륌 íì¶íë €ë ê°ë°ìì ìëë¡ 10px\10
륌 ì€ìžíë í©ë²ì ìž ê²œì°ê° ììµëê¹? ëë ê·žê²ìŽ ìŽë €ìŽ ìŽë¡ ìŽëŒë ê²ì ìê³ ìê³ , ë¹ì ì ìì ì ìë§ë ì°ëŠ¬ê° ì ë§ë¡ 몚륞ë€ë ê²ì
ëë€.....ê·žê²ì ë³µì¡í ì§ë¬žìŽê³ , ìë¡ìŽ 구묞ì ì¶ê°íë ê²ì íì ìŽë €ìŽ ìŒì
ëë€. í¹í ì°ëŠ¬ê° 몚ë CSS륌 ìì§ ëª»íêž° ë묞ì Less륌 ì¬ì©íë ê²œì° ìŒì ëë 믞ë CSS.
ê³ì°ì êŽíŽìë ì°ëŠ¬ê° ì²ìë¶í° í©ìê° ììë ê² ê°ìµëë€. ë°ëŒì Ʞ볞ì ìŒë¡ ìì ëŽì¬ìê° ê·žê²ì 구ííꞰ륌 êž°ë€ëŠ¬ë ê²ë¿ì ëë€. ì©ê°í ì¬ë - ì¬ìí 구í ìžë¶ ì¬íì ë€ë¥Œ ì ìì§ë§ íë¡ìžì€ìì ê²°ì íë ê²ìŽ ì¢ë€ê³ ìê°í©ëë€.
ì¢ì! ê°ìì±ì ëìŽêž° ìíŽ ë³ëë¡ ì¶ì íŽìŒ í©ëê¹?
@seven-phases-max:
ë¬Œë¡ ì€ì íë¡ì ížììë ê·žë° ìœë륌 ê±°ì ì°Ÿì ì ììµëë€(ì:
\9
ê°ì íŽí¹ ì ìž).
ë§ì . ì€, ê·ž ê±°ì¹ "ìììž"... :)
@seven-phases-max
"ìŽë»ê² 0 + 1/2ê° (1/2)ë³Žë€ ë ëì ì ììµëê¹?"ëŒë ê°ëší ì§ë¬žì ëµíììì€.
ëë ë¹ì ìŽ ê·žê²ì ê°ì§ê³ ìŽëë¡ ê°ëì§ ë³Œ ì ììµëë€. (1/2)
ë ì íší CSSê° ìë ì ììŒë¯ë¡ LESSë¡ ì€ííŽìŒ íë¯ë¡ LESSë¡ ì믞íŽìŒ í©ëë€. 0 + 1/2
ë 1/2
ê° ëìŽìŒ í©ëë€. ì¬êž°ì LESSë 0 + 1
ë¶ë¶ì ââì€íí©ëë€. ìëíë©Ž ê·žê²ìŽ ì íší CSSê° ë ì ìë ë¶ë¶ìŽêž° ë묞ì
ëë€. 1/2
ë¶ë¶ ì ì íš
@thany
ì¢ì, ìŽì (1/2)
ìŽ Lessì Sassìì 몚ë ììëë¡ ìëíë€ë ê²ì 깚ë«ìµëë€.
ê·žëŠ¬ê³ 0 + 1/2
(ë° 1 * 1/2
ë±)ì ììì brightëŒê³ ë¶ë¥Žë ì룚ì
ì ìŒë¶ìŽë©° "brilliant soution" 결곌ë 0.5
ì
ëë€.
ì¬êž°ìì ë¬Žìš ìŒìŽ ìŒìŽëê³ ìëì§ ìì§ ëªšë¥Žìëê¹?
ìì 몚ë ëŽì©(첫 ë²ì§ž ê²ì묌ë¶í° ìì)ì ë€ì í ë² ìœê³ "ëŽê° ì íí 묎ìì ëíŽ ë¶ííê³ ìë ê²ëê¹?"ëŒê³ ì€ì€ë¡ìê² ëµíŽ 볎ìžì.
@seven-phases-max
ê·žëŠ¬ê³ 0 + 1/2(1 * 1/2 ë±ë í¬íš)ë ììì brightëŒê³ ë¶ë¥Žë ì룚ì ì ìŒë¶ìŽë©° "brilliant soution" 결곌ë 0.5ì ëë€.
ìë,ìŽ ì룚ì
ì ê² 1/2
íì§ 0.5
, ìŽí 1/2
ì íší CSS ì ììµëë€. ì¬ëìê° ìžì ì íšíì§ LESSê° ìꞰ륌 ìíì§ ìë ê² ê°ìŒë¯ë¡ íì ê·žëŽ ì ìë€ê³ ê°ì íììì€. ë°ëŒì 1/2
ê° ì ìŒí ë
ŒëŠ¬ì 결곌ì
ëë€. ê°ì ë°©ììŒë¡ 2 * 1/2
ë 2/2
*
ê° ë©ëë€. ê·žë ì§ ììŒë©Ž
ì¬êž°ìì ë¬Žìš ìŒìŽ ìŒìŽëê³ ìëì§ ìì§ ëªšë¥Žìëê¹?
ëë ì¬êž°ì ë¬Žìš ìŒìŽ ìŒìŽëê³ ìëì§ ì벜íê² ë¶ëª í©ëë€. LESSë ìí ëëì ì ìŽì¬í ì€ííê³ ë§¹ëª©ì ìŒë¡ ëšì륌 묎ìí©ëë€.
ìì 몚ë ëŽì©(첫 ë²ì§ž ê²ì묌ë¶í° ìì)ì ë€ì í ë² ìœê³ "ëŽê° ì íí 묎ìì ëíŽ ë¶ííê³ ìë ê²ëê¹?"ëŒê³ ì€ì€ë¡ìê² ëµíŽ 볎ìžì.
ìžì 공격ì íìììµëë€.
LESSë ìí ëëì ì ìŽì¬í ì€ííê³ ë§¹ëª©ì ìŒë¡ ëšì륌 묎ìí©ëë€.
ìŽê²ì ë¹ì ìŽ ì€ë¥žìªœì ëíì¬ ì ê³ í ê²ì ëë€ ê·žëì?
ìžì 공격ì íìììµëë€.
ê·žëŒ ëì ìŽë»ê² íŽìŒ í ê¹ì? ìë ë ê°ì ê²ì묌 ì ê³ìíŽì(ê·žëŠ¬ê³ ë€ì) ë°ë³µí©ëê¹? ëª
ííŽì§ ëê¹ì§:
@컀뮀ëí° :
-sm
ìµì ì¬ì©
@thany :
ê·žë¬ë©Ž Ʞ볞ì ìŒë¡ ìŒì ž ììŽìŒ í©ëë€.
@seven-phases-max:
ì ë§ì íë¡ì ížê° ìŠì ì€ëšë ê²ìŽêž° ë묞ì ë¶ê°ë¥í©ëë€. ë°ëŒì Ʞ볞 ëìì 묞ì ë¡ ì·šêžíë ê²œì° ë¬žìíë ìµì ì ì€ì íêž°ë§ íë©Ž ë©ëë€.
ê·žëì "íŽìŒ íë€", "íŽìŒ íë€", "íŽìŒ íë€"륌 ë°ë³µíë©Žì 묎ìì êž°ëíê³ ììµëê¹? ë¹ì ìŽ ì ìí ê²ìŽ ìëíì§ ìê±°ë ìŒë°ì ìŒë¡ ë§ìŽ ëì§ ìë ìŽì ì ëíŽ ììží ì€ëª íë ë° ìê°ì ëë¹íë ëì "ìëì, íŽìë ì ë©ëë€"ëŒê³ ëëµíë ê²ìŽ ë ìœìµëë€. ìŽíŽíê±°ë ëšìí í ì ìì).
ìŽ ì€ë ëì ëŽì©ì 묎ìì
ëê¹? " -sm
ì ê°ì íëì Ʞ볞ê°ìŒë¡ ë§ëë ê¶ê·¹ì ìž ì£Œì ë³ê²œì íŒí ì ìì§ë§ ì°ëŠ¬ë 묎ììŽ ê² ìžì ë ížìí ì°ì ì ìí ìì€ì ì ê³µíŽìŒ íë€ë ê²ì 깚ë«ë ê²ì
ëë€. margin: (1/2) (3/4) (5/6) (7/8);
ì°ì ì ë§ìŽ ì¬ì©íììì€."
ì¬êž°ì ê²ìíë ê²ì ìŽë¯ž ì¡Žì¬íë -sm
íëë³Žë€ ë«ì§ ìì(ëë ìì í ëê°ì íëì íë) 묎ìžê°ë¥Œ ì ìíê±°ë ì²ìë¶í° ì묞ì ì¬ì§ê° ìë ê²ì ëíŽ ë
Œìí©ëë€( ê±°êž° ì²ëŒ). ìŠ, ììì ë
žìŽìŠ .
@seven-phases-max @thany ìšë륌 í ëšê³
ëë ëë¶ë¶ì ì¬ëë€ìŽ ìŽ ë ê°ì§ì ëíŽ ê°ì íìŽì§ì ìë€ê³ ìê°í©ëë€. Lessë ìí ííììŒë¡ ìŽìì ìŒë¡ íŽìíì§ ììµëë€.
font: 12px/10px;
width: calc(100% - 20px);
ë°ëŒì ìŽë¬í ì ì ëíŽìë ëë¶ë¶ ëìê° ììŒë©° ëë¶ë¶ì 죌ì¥ì ê°ë¥í ì룚ì
ì êŽí ê²ì
ëë€. calc()
묞ì ë ììŒë¡ ëìê° ì ìë 충ë¶í í©ìê° ìë ê² ê°ìµëë€. Ʞ볞ì ìŒë¡: calc륌 걎ëëŠ¬ì§ ë§ê³ calc()
vars륌 묞ììŽ ë³Žê°ê³Œ ê°ìŽ ì·šêžíììì€. calc()
ì ë³Žê° êµ¬ë¬žìŽ íìíꞎ íì§ë§ Sassê° ìííë ë°©ì곌 ë¹ì·í©ëë€. íìíì§ ìë€ê³ ìê°í©ëë€.
font
ë¶ë¶ì ëí ì룚ì
ì íšì¬ ë ë³µì¡íŽì¡ìŒë©° 죌ì ì룚ì
ì ë€ì곌 ê°ìµëë€.
strictMath
ì€ìì¹(Ʞ볞ê°ìŒë¡ ë§ëë ëì ì¶ê°ëììŒë©° @seven-phases-maxì ì ì)륌 ë€ì§ì ë€ì ëª
ìì ìŒë¡ 몚ë ê³ì°ì ìíí©ëë€. êž°ì ì ìŒë¡ íì¬ ëë¶ë¶ì ì¬ëë€ìê² ê°ë¥í ì룚ì
ìŽì§ë§....묞ì ê° ë묎 ì죌 ë°ìíê³ ì¬ëŠ¬ì ìŒë¡ ìŽë€ ìì€í
ì ì²ì ì íë ì¬ëë Ʞ볞ê°ì ì ì§í ê°ë¥ì±ìŽ ìë€ë ê²ì ìê³ ììŒë¯ë¡ 묞ì ê° ë©ëë€. ëí 몚ë ê°ë°ìê° í¹í íìì ë¹ë ì€ì ì ë³ê²œí ì ìë ê²ì ìëëë€../
ë¡ ìëíì§ë§ 볎Ʞìë ì¡°êž ìŽìí©ëë€. \
ë ì°êµ¬ ììŽ íì¬ë¡ìë ì ì ììµëë€. ìëí ì ìê³ ìŽì€ìŒìŽíì ì ì ìë 충ëì ìŒìŒí¬ ì ììµëë€. (ì ì¬ì ìŽì§ë§ ìë €ì§ì§ ìì) ë ëì ìíìì ë 깚ëí 구묞ì
ëë€. ëêµ°ê°ê° ìê°ì ëŽìŽ ìŽê²ìŽ 충ëì ìŒìŒí€ì§ ìì ê²ìŽëŒë ê²ì ìì°íë€ë©Ž, ìŠ íìê° ëì ëª
ííê² êµ¬ë³í ì ìë ë°©ììŒë¡ íŒí©ë íì¶ê³Œ ìíì ì륌 ì ê³µíë€ë©Ž, ì¬ì í ê°ë¥ì±ìŽ ììµëë€. ë°ëŒì ìì
ìŽ íìí©ëë€. @thany , ë¹ì ìŽë ë€ë¥ž ëêµ°ê°ê° ìŽê²ì í¬ìŽëŒë©Ž ìŽê²ìŽ íìí ìì
ì
ëë€. ë§ì§ë§ìŒë¡ ìíë ê²ì íŽì ìê°ì ë€ë¥ž ê³³ìŒë¡ ì®êž°ë ê²ì
ëë€.ìŽ ì€ë ë륌 ëšìííë €ë©Ž ì¬êž°ìì #3
ìë§ ì§ì€íŽìŒ íë€ê³ ìê°í©ëë€. ëë ëë¶ë¶ ížêž°ì¬ìŒë¡ Sass ìì 륌 ê²ìíì§ë§ ìŽë¬í ì룚ì
ìŽ íë¥íê±°ë 묞ì 륌 ìì í íŽê²°íë€ê³ ìê°íì§ ììŒë©° ê°ë
ì ìŒë¡ Lessì ížíëì§ ììµëë€. 0 + 1/2
ì구ì íë¹ì±ì ëíŽ ë
Œìíë ê²ì ì°ëŠ¬ë¥Œ ì묎ë°ë ì»ì§ 못í ê²ì
ëë€.
ë°ëŒì í
ìŽëžì calc()
ì ëí ì¢ì ì룚ì
ìŽ ììŽ ëë¶ë¶ì ê²ìë 묞ì ì ëíŽ 50%ì êž°í륌 ì»ì ì ììŒë¯ë¡ ëšêž°ì ìŒë¡ ìŽ ì§ë¬žìë§ ì§ì€íë ê²ìŽ ì¢ìµëë€.
Less ëëì ì°ì°ì륌 ë³ê²œíŽìŒ íë ê²œì° ë¬ŽììŒë¡ ë³ê²œíŽìŒ í©ëê¹?
./
- ìŽê²ìŽ ëŽê° ëëŒë ê²ì²ëŒ ìŽìí©ëê¹, ìëë©Ž ì¬ëë€ìŽ êŽì°®ë€ê³ ìê°í©ëê¹?\
- ì°êµ¬ì ìŠëª
, ë°ëŒìŒ í íì륌 ìí ìì¬ ìœë ììŽë ììŒë¡ ëìê° ì ììµëë€. ëë ê°ìžì ìŒë¡ ê·žê²ìŽ ìì íë€ê³ ì
ìŠë ì ìë€ë©Ž ê·žê²ì ì ížíë€.ìì§í calc()
륌 ë³ê²œíê³ /
ë³ê²œíë©Ž Lessìì ìí 죌ë³ì ììì 99% ì€ìŒ ì ìë€ê³ ìê°í©ëë€.
ìë
íìžì, calc()
- https://github.com/less/less.js/pull/3162
ë§ì ì¶ê° ìœë ììŽë ìëíë ì룚ì
ì ì°Ÿìì ë ëë ë€ì ëëìµëë€. Ʞ볞ì ìŒë¡, ì°ëŠ¬ë ìŽë¯ž strictMath
ì€ìì¹ì ëí ìœë륌 ê°ì§ê³ ììê³ , êŽíž ë°ì ìë ê²œì° ìíì íê°íì§ ìëë¡ ííìì 첎í¬ìžíë¯ë¡ calc()
륌 íê°íë ëì ìíì ëë ížì¶ì ì¶ê° ì€ìì¹ë¥Œ ì¶ê°íìµëë€
https://github.com/less/less.js/pull/3162/files#diff -a94aaffd78b1d3c5eda7a42d5be1ca0d ë° https://github.com/less/less.js/pull/3162/files#diff -4e6969271823c91ì íìž
í ì€ížê° 충ë¶í©ëê¹?
@matthew-dean :컀íŒ:
í ì€ížê° 충ë¶í©ëê¹?
PRì ì견ì ë°ëŒ ë€ì곌 ê°ì í ì€ížë¥Œ ì¶ê°íììì€.
foo: 1 + 2 calc(3 + 4) 5 + 6; // expected result: 3 calc(3 + 4) 11;
ê·žëŠ¬ê³ ì¬ìí ì€ëª : ìŽ ìì ì ë¶ëª í #1627ììì ëìŒí 묞ì 륌 ìê°í©ëë€. ìŠ,
<strong i="13">@a</strong>: floor(1.1);
<strong i="14">@b</strong>: floor(1 + .1);
div {
foo: calc(<strong i="15">@a</strong> + 20%); // ok
bar: calc(<strong i="16">@b</strong> + 20%); // error: invalid floor arguments
baz: @b; // ok
}
íì§ë§ calc
ê²œì° êŽì°®ìµëë€(ê²ìŒë¥ž íê° ê°ë
ì ë€ì ì€í íì§ ìê³ ë¬žì 륌 íŽê²°í ì ìë ë€ë¥ž ê°ëší ë°©ë²ì calc
ëŽìì vars륌 ì¬ì©í ë lazy-evalì ìŒëì ëëë¡ ë¬žìì ì늌ì ë£ë 묞ì ëŒê³ ìê°í©ëë€.
ê·žëŠ¬ê³ ì¬ìí ì€ëª : ìŽ ìì ì ë¶ëª í #1627ììì ëìŒí 묞ì 륌 ìê°í©ëë€.
ì¢ì ìºì¹!
ížì¶ë¹ 컚í
ì€íž mathOn
ìì±ì ì ííë©Ž PRì ê·íì ì견곌 ì ì¬íê² ìŽ ë¬žì ê° íŽê²°ë©ëë€. íµê³Œíë float(1 + .1)
ì ëí í
ì€ížë¥Œ ì¶ê°íìµëë€!
ížì¶ë¹ 컚í ì€íž mathOn ìì±ì ì ííë©Ž PRì 죌ì곌 ì ì¬íê² ìŽ ë¬žì ê° íŽê²°ë©ëë€. ëë > íµê³Œíë float(1 + .1) í ì€ížë¥Œ ì¶ê°íìµëë€!
:) ìëì, -sm: off
ìŒ ë "ë°ë¥" ì€ë¥ê° ììŽìŒ í©ëë€ . PRìì ëŽ ìµì ì견ì ì°žì¡°íììì€.
ë³µìì 1 + 2 calc(3 + 4) 5 + 6
ê°ì ê²ë€ë§ ì²ëŠ¬í©ëë€.
:) ìëì, -sm: offìŒ ë "floor" ì€ë¥ê° ììŽìŒ í©ëë€.
ìì? calc()
ëŽë¶ì 몚ë íšìë Less íšìì¬ìŒ í©ëë€. ê·žë ì§ ìì 겜ì°ìë calc() ëŽë¶ìë ìì ìí ííìì ì¬ì©í ì ìë CSS ë€ìŽí°ëž íšìê° ììµëë€. ììëë 결곌ë vars ë° Less íšì륌 íê°íë ê²ìŽì§ë§ calc()
ëŽë¶ì ìì íšìë ê·žëë¡ ëììì€.
ì°žê³ ì¬í: Lessìì ëëì
ì°ì°ìë¡ /
륌 \
ë¡ ì ííë ë¶êž° ì€íì íìµëë€. ìŽì€ìŒìŽíì ëí í
ì€ížê° ìŽë¯ž ë§ìŽ ììŒë©°(죌ì: #3160ì ë ì¶ê°íìµëë€), 몚ë ì¬ì í ì ìëíê³ ì°ì°ì륌 ì ííŽë ìíìŽ ì ìëí©ëë€. ëë 볞ì§ì ìž ê°ë±ì ë³Žì§ ëª»íìµëë€. ë¶êž°ë ì¬êž° ëŽ í¬í¬ì ììµëë€: https://github.com/matthew-dean/less.js/commit/509d34fff7e234846afa150b099cd259755a39d0
Re: ì€ì²© íšì
ìŽë¥Œ ìíŽ:
div {
bar: calc(floor(1 + .1) + 20%);
}
ê°ë°ìë¡ì ììëë 결곌ë ë€ì곌 ê°ììŒ í©ëë€.
div {
bar: calc(1 + 20%);
}
ê·žê²ìŽ ë°ë¡ ì§êž ìŒìŽëë ìŒì ëë€(ìŽë¬í ë³ê²œ ì¬íìŒë¡). ì€ë¥ê° ë°ìíì§ ìììŒ í©ëë€.
@matthew-dean
ìëì, ë¹ì ìŽ ìŽ ë°©ë²ì ë€ì곌 ê°ìµëë€.
foo: unit(1/2, px);
-sm:on
륌 ì¬ì©íë©Ž ë€ì곌 ê°ìŽ 컎íìŒë©ëë€.
foo: .5px;
^- íë žìµëë€.
ì€ì²© íšìë ë§ì°¬ê°ì§ì
ëë€. ëí ëë¶ë¶ì íšìê° ìŒë°ì ìŒë¡ ì°ì ííìì ìžìë¡ ì¬ì©í ì ìë€ë ì¬ì€ìŽ -sm: on
ìë° ìŽì ê° ìëëë€.
ë°ëŒì -sm: on
ë ì€:
foo: floor(1 + .1);
bar: calc(floor(1 + .1) + 20%);`
ì€ë¥ê° ë°ìíŽìŒ í©ëë€(ìŽê²ìŽ 컀ë°ìì ì€ëšëš).
ë¬Žìš ìꞰ륌íë 걎ê°ì?
unit(1/2, px)
-sm:on
:
ERROR: error evaluating function `unit`: the first argument to unit must be a number. Have you forgotten parenthesis?
calc(floor(1 + .1) + 20%)
-sm:on
ERROR: error evaluating function `floor`: argument must be a number
ì§ì ì íìžíìžì. ìëíŽë³Žììì€.
ìœë ê²í ì ë ëììŽ ë ì ìë í ê°ì§ë ì못ë ì¶ë ¥ì ìì±í ì§ íì ìŽ ìì§ ìë ê²œì° íìžíììì€. ëë í¹ì ì ë ¥ì ìëíì¬ ììëë¡ ìëíëì§ íìžíëë¡ ìì²íììì€. ëë ìë ë°©ì/ìŽì ê° íì€íì§ ìì ê²œì° ì§ë¬žíììì€. ëììŽ ëì§ ìëì§ ëªšë¥ž ì± ì못 ë¶ë¥Žë ê²ì ëë€.
ì£ì¡í©ëë€. ìŽ ë¶ë¶ ì ê°ì ì ìž íµì 륌 ëì¹ ê² ê°ë€.
ì§ì ì íìžíìžì. ì¬ì©íŽë³Žêž°
ì£ì¡í©ëë€.
ì£ì¡í©ëë€. ìŽ ë¶ë¶ì ëí ê°ì ì ìž íµì 륌 ëì¹ ê² ê°ìì.
ê±±ì ë§. ìŽ ë¬žì ê° íŽê²°ëë©Ž ììí ëë¡ ìëíë ê²ì²ëŒ 볎ì ëê¹?
ìŽ ë¬žì ê° íŽê²°ëë©Ž ììí ëë¡ ìëíë ê²ì²ëŒ 볎ì ëê¹?
ì, ì§êžê¹ì§ ê·žê³³ìì ë€ë¥ž ììí ê²ì ììí ì ììµëë€.
@matthew-dean
Ʞ볞ì ìŒë¡ Lessìì ëëêž° ì°ì°ì륌 ë³ê²œí©ëë€. ì€ë ëì ì ë 겜ììë ./ë¡ ìëíì§ë§ 볎Ʞìë ì¡°êž ìŽìí©ëë€. \ ì(ë) ì°êµ¬ ììŽ íì¬ë¡ìë ì ì ììµëë€ [...] @thany , ê·í ëë ë€ë¥ž ëêµ°ê°ê° ìŽê²ì í¬ìŽëŒë©Ž ìŽê²ìŽ íìí ìì ì ëë€. ë§ì§ë§ìŒë¡ ìíë ê²ì íŽì ìê°ì ë€ë¥ž ê³³ìŒë¡ ì®êž°ë ê²ì ëë€.
ì€ì ë¡ë ì í ìëëë€. ëë \
ì°ì°ì륌 íµê³Œíì§ ëª»í í ìµíì ìëšìŒë¡ ì ìíìµëë€. LESSê° ì첎 ìí ë§ íëë¡ íë €ê³ íìµëë€. ìë¡ìŽ ëëì
ì°ì°ìê° íìí ê²ìŽëŒë©Ž... ì, calc()
ë ë§ì
, ëºì
, ê³±ì
ì í ì ììµëë€. ìë¡ìŽ ì°ì°ì? ë¹íì€ì ìŽëŒê³ ìê°í©ëë€. ìë¡ìŽ ëëêž° ì°ì°ìë êžêŒŽ, 배겜 ë° í
ë늬 ë°ê²œê³Œ ê°ì ê²ì ëí ì룚ì
ìŒ ì ìì§ë§ CSS ìíì ëí ì룚ì
ì ìëëë€.
ëë ì¬ì í ì§ì í íŽê²°ì±
ì LESSê° ì»ší
ì€ížì ëíŽ ìë ê²ìŽëŒê³ ìê°í©ëë€. (ì, ì¬êž°ì ë€ì "~íŽìŒ í©ëë€"ë¡ ìŽëí©ëë€. ë€ë¥ž ëšìŽë¥Œ ì¬ì©íŽìŒ íëì?...) calc()
ë CSS íšììŽë©° CSSê° ìíí ì ìë ìíë§ íê°íŽìŒ í©ëë€. . ê·žë¬ë floor()
ë CSSì ì¡Žì¬íì§ ììŒë¯ë¡ ì íšíì§ ìì CSS륌 ë¶ì¶íì§ ìëë¡ (ìì í) íê°íŽìŒ í©ëë€. ëë ìŽê²ìŽ ìŽì ì ë€ë¥ž ííìŒë¡ ìžêžëìë€ê³ ìê°í©ëë€.
ëë ì¬ì í ì§ì í íŽê²°ì± ì LESSê° ì»ší ì€ížì ëíŽ ìë ê²ìŽëŒê³ ìê°í©ëë€. (ì, ì¬êž°ì ë€ì "~íŽìŒ í©ëë€", ìŽë€ ëšìŽë¥Œ ì¬ì©íŽìŒ í ê¹ì?...) calc()ê° CSS íšììŽê³ CSSê° í ì ìë ìíë§ íê°íŽìŒ íë€ë ê²ì ìììŒ í©ëë€. ê·žë¬ë floor()ë CSSì ì¡Žì¬íì§ ììŒë¯ë¡ ì íšíì§ ìì CSS륌 ë¶ì¶íì§ ìëë¡ (ìì í) íê°íŽìŒ í©ëë€. ëë ìŽê²ìŽ ìŽì ì ë€ë¥ž ííìŒë¡ ìžêžëìë€ê³ ìê°í©ëë€.
ê³µì íê² ë€ì: \
, ê·žë¬ë 컚í
ì€ížì êŽí í ê·íì ë€ë¥ž ê²ì묌ì êž°ë°ìŒë¡ íë©Ž ê·íê° ìê°íë ê²ë³Žë€ íšì¬ ë ë³µì¡í 묞ì ìì 볎ì¥í ì ììµëë€. ì ë§ ë€ì곌 ê°ìŽ ì€ì¬ìŒ í©ëë€.
12px/10px // Is this division, or not?
10px/1.5 // is this division, or not?
ë¹ì ì íì€í ëšê²š ë¡ëë€ /
몚방ì, ëëêž° ì°ì°ìë¡ calc()
, ê·žëŠ¬ê³ ë¹ì ìŽ ì ëì ìŒë¡ ìëì§ íìžíŽìŒí©ëë€, ê·žê²ì ëªšíž í ìŽ /
ì êŽíž( calc()
ììž ì ìž). ìŽë ììž¡ ê°ë¥í 컚í
ì€ížë¥Œ ì ê³µí©ëë€.
ìŽ ì€ë ëì ìì ë¶ë¶ì ìë ê·ž ì ìë ì¬ì í ê°ë¥ì±ìŽ ììŒë©° ê°ë ¥í ì§ìì ë°ììµëë€. Ʞ볞ì ìŒë¡ Ʞ볞 ì€ì ì 몚ë ìí ë¶ë¬žì ì ìžíê³ ìžë¶ êŽížë¥Œ ì§ì (ë€ì ì ìžëë ê²ìŽ calc()
ì
ëë€ 3.0 ìŽììì ì§êžì 겜ì°). ìŽì©ë©Ž ê·žê²ìŽ ê° êžžì
ëë€. ê·žë¬ë©Ž ë€ììŽ ê°ë¥í©ëë€.
font: 10px/1.5; // not division
font: (10px/10); // division, result is 1px
font: 10px+15px/1.5; // addition but not division, result is 25px/1.5
font: (10px+15px/1.5); // result is 20px
묞ì ë 10px+15px/1.5
ëí ê²°ê³Œê° êŽíž ìì ìì§ ìë í "ì ë° íê°"ëë ê²ì²ëŒ 볎ìŽë ííìì ì¬ì©íì¬ ê°ë°ìê° ì¬ì í ꎎë¡ìíêž° ìŽë €ìž ì ìë€ë ê²ì
ëë€. Ʞ볞ì ìŒë¡ ì격í ìíì ì€ì íë€ë©Ž êŽì°®ìì ê²ì
ëë€. ë 몚íží©ëë€. [shrug] ìŽë 쪜ìŽë , ìŽë€ ì¢
ë¥ì 컚í
ì€ížìì ìíì ëííë ê²ì 몚ížì±ì ì ê±°íë ë°©ë²ìŽë©°, ëëêž° ì°ì°ì륌 ë³ê²œíë ê² ìžìë ëëì
ì ìí ì ìŒí ë°©ë²ì
ëë€.
컀뮀ëí°ë 볞ì§ì ìŒë¡ ë°©í¥ì ê²°ì íŽìŒ í©ëë€. ìŽ ì€ë ëìë ì€í ê°ë¥í ìµì ìŽ ììµëë€. ê°ê° ëšì ìŽ ììµëë€. ê°ê°ì ê³ íµì ìŽ ììµëë€. ìŽë ë구ë ìì í í©ì륌 ì»ì§ 못í ê²ì ëë€. ê·žë¬ë IMOë íì¬ ìë늬ì€ë³Žë€ ë ì¢ìµëë€. ê·ž ììœì ìŒí€ë©Ž ë©ëë€.
ê·žëì ë¶ê°ë¥í ìŒì íêž° ìí ë žë ¥ì ìŒíìŒë¡ ì ë ìŽê²ì ì ìíê³ ì¶ìµëë€(3ë ì ì ì견 ì ë€ì ì°žì¡°).
--strict-math
3ê° ì€ì ì ê³µ
on
)ë
Œìì íŽê²°íë €ë©Ž --strict-math=division
ì€ìì¹ê° ë€ìì ìííëë¡ íì©íììì€.
/
묞ìë§ìŒë¡ ëëì§ ë§ììì€. ì: border-radius: 55px / 25px;
--> ìí ìì(ì, ì íší CSSì
ëë€).
ì ëì¬ - border-radius: 55px ./ 25px;
border-radius: (55px / 25px);
border-radius: (55px ./ 25px);
ê° ì íší©ëë€.ë°ëŒì ê°ë°ìë¡ì í ë²ì ìŽ ì ížíì§ ìëë€ê³ ìê°ëë©Ž ë€ë¥ž ë²ì ì ì¬ì©í ì ììµëë€. ìŒë¶ë êŽížë¥Œ ì¬ì©íì§ ìë ê²ì ì íží ì ììµëë€. ìŒë¶ë ìì ë ëëì
ì°ì°ì륌 ì¬ì©íì§ ìë ê²ì ì íží ì ììµëë€. 몚ë륌ìí 묎ìžê°. ê·žëŠ¬ê³ /
ê° font
, background
, border-radius
ìì ì¬ì©ëë CSSìì íì¬ ë늬 ì¬ì©ëë 구묞ì ì¬ì©íë Less륌 ì²ì ì¬ì©íë ì¬ëë€ìê²ë ë ìŽì ë¶ìŸí ëëŒììŽ ììµëë€ @media
쿌늬, CSS Grid ìì±, ê·žëŠ¬ê³ ìë§ë ììŒë¡ ë ë§ì ê²ì
ëë€.
ëë ìŽê²ì ìµì ìŒë¡ PRì ë£ì ë€ì ë Œìí ëë¡ í¥í 죌ì ë²ì ì Ʞ볞ê°ìŒë¡ ì ííë ê²ìŽ ì¢ìµëë€.
@matthew-dean
ìŠ ë§ì¹šíë ìŽì€ìŒìŽí ìíì€ì ì곌 ê°ì ìí ì í©ëê¹?
ëì ìê°ìŽ ìëìŒ, ì ë§ë¡...
ê·žëŠ¬ê³ ëªšë ê²ì ê³ ë €íì ë _ìë§ë_ ê°ì¥ 깚ëí ê°ë¥í ì룚ì ì€ íëì ëë€.
@rjgotten ì¬êž°ì ìì: https://github.com/matthew-dean/less.js/tree/strict-math-division
í
ì€íž ì€ íëìì ì¬ì í ìŽìí ì€ë¥ê° ë°ìí©ëë€. ì¬êž°ìì ì°šì ë
žë ì€ íë륌 ìì
ë
žëë¡ ë°êŸžë ê² ê°ìµëë€(ê·žë° ë€ì ìì
ë
žëìì ìì
ì ìíí ì ìêž° ë묞ì ì€ë¥ê° ë°ìí©ëë€. strictMath: division
ìì ì€íëì§ ìë ë€ë¥ž í
ì€ížê° ì ëë¡ ìëíêž° ë묞ì 구묞 ë¶ì 묞ì ìž ê² ê°ìµëë€. íìžíŽë³Žê³ ëìì ì€ ì ìëì§ íìžíìê² ìµëê¹?
ëŽê° íê³ ì¶ì ê²ì ìŽ ë¬žì 륌 ë«ê³ ëëšžì§ ìí 묞ì 륌 ì²ëŠ¬íë ì 묞ì 륌 ë§ëë ê²ì ëë€. 구첎ì ìŒë¡:
strictMath: 'division'
êž°ë¥.
ê°ì¥ ì ì©í ëêž
ì ìì ëšìí/ì¬ìì±íë €ë©Ž - ìí ë³ê²œ ì¬íì ë€ì곌 ê°ìµëë€.
1px + 2px = 3px
,1px + 1vh = 1px + 1vh
10px/2 = 5px
,10px/5px = 10px/5px
1/3 = 1/3
1px + 2vh / 2 = 1px + 2vh / 2
ìŽ ì ìì ë€ìì íŽê²°í©ëë€(ìŽ ì€ë ëìì).
font: 10px/5px
ë° ì ì¬(ë¹ìš) 구묞(ê³ì° ìì)calc(100vh - 30px)
(ê³ì° ìì)lost-column: 1/3
ë° ì ì¬í ì¬ì©ì ì§ì ë¹ìš 구묞(ê³ì° ìì)ëìì ìŽë¬í ë³ê²œì ìŒë°ì ìž Less ìí ì¬ì©ì 99%륌 볎졎í©ëë€. ëí êž°ì¡Ž
unit()
ë°convert()
íšì륌 ì¬ì©íë©Ž ì¬ì©ìê° ìíì ìíŽ ížíëë ëšìë¡ ê°ì ìºì€í í ì ììµëë€.