Advertisement
  1. Web Design
  2. HTML/CSS
  3. JavaScript for Designers

Loại bỏ CSS không cần thiết với PurifyCSS và Grunt

Scroll to top
Read Time: 4 min

() translation by (you can also view the original English article)

Trong hướng dẫn này tôi sẽ chỉ cho bạn cách sử dụng Grunt và PurifyCSS để tạo ra một stylesheet siêu-nhẹ ít tốn công nhất. Chúng ta sẽ cài đặt nó, sau đó tìm hiểu cách để chạy nó mà không cần Grunt, để cung cấp cho chúng ta các phong cách (style) hiệu quả hơn.

Xem video hướng dẫn

PurifyCSS là một công cụ JavaScript phân tích các tập tin đánh dấu của bạn (HTML, PHP, hoặc thậm chí cả JavaScript), sau đó tham chiếu chúng qua bất kỳ CSS nào mà bạn đang sử dụng. Bất kỳ selector nào trong CSS của bạn mà không được sử dụng sẽ bị loại bỏ, để lại cho bạn chỉ những phong cách mà bạn thực sự cần.

Cài đặt

Để cài đặt PurifyCSS bạn có thể kéo trực tiếp repo (kho chứa) của nó từ GitHub, hoặc cài đặt nó thông qua npm (để biết thêm về cách thực hiện hãy xem qua hướng dẫn này từ Kezz).

install via npminstall via npminstall via npm
Cài đặt thông qua npm

Bản demo của chúng ta

Các tập tin mà chúng ta sẽ sử dụng để minh hoạ PurifyCSS là một stylesheet đầy đủ của Bootstrap và một index.html. Bạn có thể lấy chúng từ repo nguồn. Tập tin index.html thì khá đơn giản; chỉ có một hero section, với một vài nút bấm, các phần tử form, và Bootstrap grid (ô lưới); chúng ta chắc chắn không cần toàn bộ phong cách của Bootstrap.

bootstrap stylesbootstrap stylesbootstrap styles
Toàn bộ stylesheet của Bootstrap

Chạy PurifyCSS

Để chạy PurifyCSS trên stylesheet này, vào trình gõ lệnh, điều hướng đến thư mục dự án và chạy lệnh sau đây:

  • lệnh purifycss để bắt đầu
  • stylesheet nguồn để được làm sạch
  • các tập tin đích, trong trường hợp của chúng ta là index.html
  • một tham số tùy chọn --min nếu chúng ta muốn kết quả CSS được rút gọn.
  • một tham số tùy chọn --out ở sau cái này chúng ta có thể thiết lập vị trí mà chúng ta muốn các tập tin kết quả để được lưu
  • tham số tùy chọn --info nếu chúng ta muốn thấy tiến trình được ghi lại trong terminal
  • và tham số tùy chọn --rejected, khi được thêm vào, ghi lại tất cả các selector mà đã được loại bỏ từ stylesheet nguồn

Lệnh hoàn chỉnh của chúng ta trông như thế này:

1
purifycss css/bootstrap-full.css index.html --min --out css/bootstrap-purify.css --info --rejected

Kết quả

Stylesheet nguồn đã được cắt bớt khoảng hơn 100Kb, rất tốt!

Sử dụng PurifyCSS với Grunt

Để tự động hóa quá trình của chúng ta hơn nữa chúng ta có thể sử dụng một task runner (trình chạy tác vụ) như Grunt. Quay trở lại điểm khởi đầu của chúng ta, chúng ta cần thêm một package.json vào dự án của chúng ta. Chạy lệnh npm init từ trong thư mục của chúng ta sẽ đưa chúng ta đến một tiến trình tạo ra package.json, về cơ bản xuất ra một tập tin với các chi tiết sau:

1
{
2
  "name": "purifycss",
3
  "version": "1.0.0",
4
  "description": "A file for testing Grunt PurifyCSS",
5
  "main": "index.js",
6
  "scripts": {
7
    "test": "echo \"Error: no test specified\" && exit 1"
8
  },
9
  "author": "Adi Purdila",
10
  "license": "ISC",
11
}

Sau đó, nếu chúng ta vẫn chưa có nó, thì chúng ta cần phải cài đặt Grunt:

1
npm install grunt --save

Nếu điều đó được thực hiện xong, bạn sẽ thấy một thư mục "node_modules" đã được thêm vào dự án của bạn.

Cài đặt Grunt Plugin

Tiếp theo, chúng ta cần cài đặt Grunt plugin cho PurifyCSS.

1
npm install grunt-purifycss --save

Tạo Gruntfile

Bây giờ, chúng ta cần tạo một tập tin gọi là gruntfile.js. Hãy nhìn vào các tập tin mã nguồn để xem những gì được chứa trong tập tin này, nhưng đặc biệt lưu ý đến các Grunt task của chính nó:

1
        purifycss: {
2
            target: {
3
                src: ['*.html', 'js/*.js'],
4
                css: ['css/bootstrap-full.css'],
5
                dest: 'css/bootstrap-grunt.css'
6
            }
7
        }

Các tùy chọn bên trong đối tượng đích có lẽ quen thuộc với bạn từ trong bài tập trước của chúng ta, và với bộ tham số này, thì tập tin của chúng ta sẵn sàng.

Để chạy Grunt, trong terminal nhập lệnh sau:

1
grunt purifycss

Kết luận

Và chúng ta đã hoàn thành! Chúng ta đã tìm hiểu hai phương pháp tiếp cận khác nhau trong việc sử dụng PurifyCSS để dọn sạch các stylesheet của chúng ta. Nên nhớ: không có lý do gì để các trình duyệt nạp hàng kilobyte phong cách mà không được sử dụng, hiệu năng là quan trọng!

Tài nguyên hữu ích

Tìm hiểu thêm Grunt trên Tuts+

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Web Design tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.