white-space xử lý khoảng trắng dòng trong CSS

white-space xử lý khoảng trắng dòng trong CSS

white-space xử lý khoảng trắng dòng trong CSS

Có khi nào bạn tự hỏi tại sao khi bạn gõ một mớ khoảng trắng bằng cách nhấn phím space liên tiếp cho đoạn văn mà bạn soạn ở chế độ html thì khi hiển thị nó cũng chỉ hiển thị là một khoảng trắng, thậm chí khoảng trắng bạn cố tình gõ ở đầu dòng thì bị loại bỏ khi hiển thị. Chúng ta sẽ tìm hiểu về thuộc tính white-space trong CSS và các giá trị của nó đã quyết định đến quy cách hiển thị khoảng trắng của bạn trong đoạn văn như thế nào.

Giả sử ta có một đoạn văn như sau được gõ ở chế độ html.

<div id="results">
      HTML5 có lẽ là công nghệ đến muộn và mạnh mẽ nhất,                   nhưng một số trình duyệt vẫn chưa hổ trợ những thẻ mới trong HTML5, sau đây chúng ta sẽ cùng tìm hiểu những giải pháp để giải quyết vấn đề này.
Từ phiên bản IE8 trở xuống không hổ trợ các phần tử trong HTML5, cũng giễ hiểu bởi vì khi chúng ra đời HTML5 vẫn chưa phát triển.
</div>

normal

#results {
   white-space: normal;
   width: 400px;
   border: 1px solid #999;
}

Đây là giá trị mặc định trong css, giá trị này đã quyết định dòng văn bản của bạn sẽ tự bẻ xuống tại khoảng trắng khi nó tới giới hạn của hộp bao nó, và cơ chế loại bỏ các khoảng trắng liên tiếp nhau cũng như khoảng trắng nằm ở đầu đoạn văn.

white-space

nowrap

#results {
   white-space: normal;
   width: 200px;
   border: 1px solid red;
}

Giá trị này sẽ loại bỏ các khoảng trắng thừa nhưng dòng văn bản sẽ không được bẻ xuống khi nó dài quá chiềug rộng hộp bao nó.

white-space

pre

 #results {
   white-space: pre;
   width: 400px;
   border: 1px solid red;
}

Giá trị này sẽ không loại bỏ khoảng trắng thừa cũng như sẽ không tự động bẻ xuống dòng tại khoảng trắng khi đoạn văn dài quá hộp bao nó, và dòng văn bản mà bạn tạo bằng cách gõ phím enter sẽ được hiển thị đúng như vậy. Tuy nhiên giá trị này không làm việc đúng trên IE8.

pre-line

#results {
   white-space: pre-line;
   width: 400px;
   border: 1px solid red;
}

Giá trị này gần giống với giá trị mặc định normal chỉ có điều là dòng văn bản mà bạn tự gõ enter xuống sẽ được công nhận và hiển thị là một dòng mới. Phiên bản IE8 thì lại không hoàn toàn hiểu giá trị này mà chúng hiển thị giống với giá trị mặc định.

white-space

pre-wrap

#results {
   white-space: pre-wrap;
   width: 400px;
   border: 1px solid red;
}

Giá trị này sẽ không loại bỏ khoảng trắng thừa và dòng văn bản mới thực bằng cách gõ phím enter sẽ được công nhận. Tuy nhiên dòng văn bản sẽ tự động xuống dòng tại khoảng trắng khi nó vượt quá giới hạn của hộp. IE8 không hiểu giá trị này và hiển thị như giá trị mặc định.

white-space

Bạn thấy bài viết này như thế nào?: 
Average: 10 (2 votes)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Facebook sẽ thâu tóm 72% doanh thu quảng cáo từ mạng xã hội vào năm 2012

Facebook sẽ thâu tóm 72% doanh thu quảng cáo từ mạng xã hội vào năm 2012

Năm tới, Facebook dự kiến ​​sẽ thâu tóm 72% doanh thu quảng cáo mạng xã hội. Điều này cũng có nghĩa là họ sẽ có trong tay 6,1% doanh thu của quảng cáo trực tuyến toàn cầu.

mạng quảng cáo Yandex

Giới thiệu về Yandex và mạng quảng cáo Yandex

Bài viết này mình sẽ tập hợp các thông tin về Yandex – một trong những công ty công nghệ hàng đầu tại Liên bang Nga, điểm qua một số dịch vụ mà Yandex đang cung cấp.

Hơn 60% ứng dụng trên App Store chưa từng được tải về lần nào

Hơn 60% ứng dụng trên App Store chưa từng được tải về lần nào

Số liệu thống kê từ một bên thứ ba cho biết, có tới hơn 400.000 ứng dụng trên App Store chưa từng được một lần người dùng iOS tải về máy. Theo Phonearena, thống kê trên được đưa ra bởi hãng nghiên cứu Adeven dựa trên số liệu có được từ các ứng dụng iOS

Công ty diệt chuột T&C

 

Diet con trung