Tufte-css: ν”„λ‘œμ νŠΈμ— λΉŒλ“œ μΆ”κ°€

에 λ§Œλ“  2017λ…„ 11μ›” 06일  Β·  5μ½”λ©˜νŠΈ  Β·  좜처: edwardtufte/tufte-css

μΆ”κ°€λœ λΉŒλ“œλŠ” tufle.min.css λΌλŠ” CSSμ—μ„œ μΆ•μ†Œλœ 버전을 λ§Œλ“€ 수 있으며 Autoprefixer/PostCSSλ₯Ό 톡해 ν•„μš”ν•œ λͺ¨λ“  곡급업체 접두사λ₯Ό μžλ™μœΌλ‘œ μΆ”κ°€ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

이 λͺ¨λ“  μž‘μ—…μ„ μˆ˜ν–‰ν•˜λ €λ©΄ 두 가지 λ°©λ²•μœΌλ‘œ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  1. λ§ˆμŠ€ν„°κ°€ μ—…λ°μ΄νŠΈλ  λ•Œλ§ˆλ‹€ λ°œμƒν•˜λ„λ‘ Travis와 ν•¨κ»˜ μ΄μƒμ μœΌλ‘œλŠ” gh-pages 뢄기에 λΉŒλ“œν•˜λŠ” λ§ˆμŠ€ν„° λΆ„κΈ°λ₯Ό λ§Œλ“­λ‹ˆλ‹€.

  2. μ†ŒμŠ€λ₯Ό ν¬ν•¨ν•˜λŠ” src 폴더와 λΉŒλ“œ μ•„ν‹°νŒ©νŠΈλ₯Ό ν¬ν•¨ν•˜λŠ” dest λΌλŠ” 좜λ ₯ 폴더λ₯Ό λ§Œλ“­λ‹ˆλ‹€. 그런 λ‹€μŒ HTMLμ—μ„œ dest 버전을 κ°€λ¦¬ν‚΅λ‹ˆλ‹€. npm을 μ„€μΉ˜ν•˜κ³  λΉŒλ“œ νŒŒμΌμ„ 직접 컀밋해야 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

버전 1을 ꢌμž₯ν•˜κ³  λŒ€λΆ€λΆ„μ˜ PR을 μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λΆ„κΈ°λ₯Ό κ΅¬μ„±ν•˜λ €λ©΄ κΈ°μ—¬μž/μ†Œμœ μžκ°€ ν•„μš”ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 이것이 λ‚΄ λ§ˆμŒμ— κ°€μž₯ 쒋은 해결책이 될 κ²ƒμž…λ‹ˆλ‹€. 무엇을 μ„ ν˜Έν•˜λŠ”μ§€ μ•Œλ €μ£Όμ„Έμš”.

#119의 λ¬Έμ œλŠ” μ΄κ²ƒμœΌλ‘œλΆ€ν„° 큰 도움을 받을 κ²ƒμž…λ‹ˆλ‹€. 그리고 이 라이브러리λ₯Ό μ‚¬μš©ν•˜λ €λŠ” μ‚¬λžŒλ“€μ€ μ΅œμ ν™”λœ 버전을 μ‚¬μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ§Žμ€ μ›Ή ν”„λ‘œμ νŠΈλŠ” 이제 npm을 νŒ¨ν‚€μ§€ κ΄€λ¦¬μžλ‘œ μ‚¬μš©ν•©λ‹ˆλ‹€. λΉŒλ“œ 단계와 ν•¨κ»˜ package.json νŒŒμΌμ„ ν¬ν•¨ν•˜κ³  νŒ¨ν‚€μ§€λ₯Ό npm λ ˆμ§€μŠ€νŠΈλ¦¬μ— κ²Œμ‹œν•˜λ©΄ 쒋을 κ²ƒμž…λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ μ‰½κ²Œ μ„€μΉ˜, κ°€μ Έμ˜€κΈ° 및 μ—…κ·Έλ ˆμ΄λ“œν•  수 μžˆμŠ΅λ‹ˆλ‹€.

λͺ¨λ“  5 λŒ“κΈ€

이것은 λ˜ν•œ LESS λ˜λŠ” SCSS와 같은 ν”„λ‘œμ„Έμ„œλ₯Ό μ‚¬μš©ν•  κ°€λŠ₯성을 μΆ”κ°€ν•˜μ§€λ§Œ 이 ν”„λ‘œμ νŠΈμ˜ 크기가 맀우 μž‘κΈ° λ•Œλ¬Έμ— μ΄λŠ” 과도할 수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ λ‚˜λŠ” 이것을 μ •λ§λ‘œ μΆ”μ²œν•˜μ§€ μ•Šμ„ κ²ƒμž…λ‹ˆλ‹€.

μΆ•μ†ŒλŠ” κΈ€κΌ΄ 파일이 μ•„λ‹Œ tufte.css μ—λ§Œ 영ν–₯을 미치겠죠?

λ‚΄ ν…ŒμŠ€νŠΈλŠ” ~4kbλ₯Ό μ ˆμ•½ν•˜λŠ” κ²ƒμœΌλ‘œ λ‚˜νƒ€λ‚¬μŠ΅λ‹ˆλ‹€.

제 ν…ŒμŠ€νŠΈμ—μ„œ 12172 bytes λ°”μ΄νŠΈμ—μ„œ 7839 bytes λ°”λ€Œμ—ˆμŠ΅λ‹ˆλ‹€. 이것은 λ§Žμ€ κ²ƒμ²˜λŸΌ 듀리지 μ•Šμ„ μˆ˜λ„ μžˆμ§€λ§Œ λͺ¨λ“  것이 μ€‘μš”ν•©λ‹ˆλ‹€. autoprefixer -part 도 이λ₯Ό μ΅œμ†Œν™”ν•˜κ³  μœ μ§€ κ΄€λ¦¬ν•˜λŠ” 데 도움이 될 것이라고 μƒκ°ν•©λ‹ˆλ‹€.

ν˜„μž¬ μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 곡급업체 접두사λ₯Ό 많이 μ •μ˜ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ μ ‘λ‘μ‚¬λŠ” Google 및 Firefox의 μ•„μ£Ό 였래된 λ²„μ „μ—μ„œλ§Œ μ‚¬μš©λ˜λ©° 자체적으둜 μ—…λ°μ΄νŠΈλ˜λ―€λ‘œ 이전 버전을 μ‚¬μš©ν•˜λŠ” 본문은 거의 μ—†μŠ΅λ‹ˆλ‹€. 이것은 CSS νŒŒμΌμ„ 뢀풀릴 뿐이며 CSSλŠ” νŽ˜μ΄μ§€ λ Œλ”λ§μ— 맀우 μ€‘μš”ν•©λ‹ˆλ‹€.

글꼴은 영ν–₯을 받지 μ•ŠμœΌλ©° woff2 λŠ” 이미 μ••μΆ•λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ Google Font λ˜λŠ” λ‹€λ₯Έ μ„œλΉ„μŠ€μ— μ‘΄μž¬ν•˜λŠ” 경우 캐싱을 톡해 μ•½κ°„μ˜ 이득을 얻을 수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ λ‹€λ₯Έ μ‚¬λžŒλ“€μ΄ 글꼴에 더 μ‰½κ²Œ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ§€κΈˆ λ‹Ήμž₯ λ‹€μš΄λ‘œλ“œν•΄μ•Ό ν•˜μ§€λ§Œ CDN(Content Delivery Network)μ—μ„œ 글꼴을 μ‚¬μš©ν•  수 없을 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

μ•„λ§ˆλ„ κ°€μž₯ 큰 이점은 μ›Ή μ‚¬μ΄νŠΈμ˜ Critical CSSλ₯Ό html에 μΈλΌμΈν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ΄λŠ” λΉŒλ“œ λ‹¨κ³„μ—μ„œλ„ μˆ˜ν–‰ν•  수 μžˆμ§€λ§Œ μŠ€νƒ€μΌμ„ μ‚¬μš©ν•˜λŠ” λ‹€λ₯Έ μ‚¬λžŒλ“€μ—κ²ŒλŠ” 도움이 λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λ§Žμ€ μ›Ή ν”„λ‘œμ νŠΈλŠ” 이제 npm을 νŒ¨ν‚€μ§€ κ΄€λ¦¬μžλ‘œ μ‚¬μš©ν•©λ‹ˆλ‹€. λΉŒλ“œ 단계와 ν•¨κ»˜ package.json νŒŒμΌμ„ ν¬ν•¨ν•˜κ³  νŒ¨ν‚€μ§€λ₯Ό npm λ ˆμ§€μŠ€νŠΈλ¦¬μ— κ²Œμ‹œν•˜λ©΄ 쒋을 κ²ƒμž…λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ μ‰½κ²Œ μ„€μΉ˜, κ°€μ Έμ˜€κΈ° 및 μ—…κ·Έλ ˆμ΄λ“œν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@Saturate 방금 κ·€ν•˜μ˜ μ˜κ²¬μ—μ„œ 이 뢀뢄을 μ™„μ „νžˆ μ•Œμ•„μ°¨λ ΈμŠ΅λ‹ˆλ‹€.

ν˜„μž¬ μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 곡급업체 접두사λ₯Ό 많이 μ •μ˜ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ μ ‘λ‘μ‚¬λŠ” Google 및 Firefox의 μ•„μ£Ό 였래된 λ²„μ „μ—μ„œλ§Œ μ‚¬μš©λ˜λ©° 자체적으둜 μ—…λ°μ΄νŠΈλ˜λ―€λ‘œ 이전 버전을 μ‚¬μš©ν•˜λŠ” 본문은 거의 μ—†μŠ΅λ‹ˆλ‹€. 이것은 CSS νŒŒμΌμ„ λΆ€ν’€λ¦¬λŠ” κ²ƒλΏμž…λ‹ˆλ‹€.

Tuft CSSκ°€ 이 μž‘μ—…μ„ μˆ˜ν–‰ν•˜λŠ” μœ„μΉ˜λ₯Ό μ•Œ 수 μ—†μŠ΅λ‹ˆλ‹€. μžλ™ 접두사λ₯Ό 톡해 μ‹€ν–‰ν•˜λ©΄ 일뢀 background-size 만 μ‚­μ œλ©λ‹ˆλ‹€. 여기에 잠재적으둜 μ‚­μ œλœ μ½”λ“œκ°€ 더 μžˆμŠ΅λ‹ˆκΉŒ?

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰

κ΄€λ ¨ 문제

adamschwartz picture adamschwartz  Β·  16μ½”λ©˜νŠΈ

danielnixon picture danielnixon  Β·  3μ½”λ©˜νŠΈ

fustkilas picture fustkilas  Β·  5μ½”λ©˜νŠΈ

daveliepmann picture daveliepmann  Β·  29μ½”λ©˜νŠΈ

langford picture langford  Β·  21μ½”λ©˜νŠΈ