2012-01-31 7 views
62

CSS px có thể là một phần nhỏ không? Nó có được phép theo tiêu chuẩn không? Và nếu có, các trình duyệt chính có hỗ trợ nó không?Pixel CSS có thể là một phần nhỏ không?

Hãy trả lời câu trả lời bằng tài liệu, mọi người.

+0

@MetalFrog câu hỏi này bắt nguồn từ một cuộc thảo luận tại nơi làm việc :-) –

+3

Trớ trêu thay, gần đây tôi đã phải sử dụng pixel phân đoạn để có được lưới sắp xếp giao diện người dùng jQuery để bố cục đúng cách. Khi lề trên trình giữ chỗ giống hoặc một pixel nhỏ hơn lề trên các mục xung quanh, lưới sẽ dịch chuyển khắp nơi khi kéo. Sửa chữa duy nhất (và một trình duyệt chéo ở đó!) Là giảm margin của trình giữ chỗ xuống 0,5px. Sau đó, mọi thứ đều ổn. Cho dù đó là spec hay không là chủ yếu là pedantic, bạn phải làm những gì bạn phải làm vào cuối ngày. –

+0

Có quy tắc nào về cách một đường kẻ nhỏ hơn 1px nên được hiển thị bởi broweser không? Tôi có nhiều trang (tài liệu Word được chuyển đổi sang HTML), nơi các đường viền bảng có chiều rộng tương ứng với một phần nhỏ của một pixel. Các hiển thị này là 1px trong IE và firefox nhưng đường viền không hiển thị ở tất cả bên trong chrome – Andy

Trả lời

49

Có, bạn có thể chỉ định pixel phân số. Vì đây là một phần của CSS kể từ phiên bản đầu tiên nên nó được hỗ trợ tốt bởi bất kỳ trình duyệt nào hỗ trợ CSS.

tham khảo: CSS 2.1: 4.3.2 Lengths

"Định dạng của một giá trị thời gian (biểu thị bằng < dài > trong đặc tả này) là một < số > (có hoặc không có một dấu thập phân) ngay lập tức theo sau là một đơn vị số nhận dạng (ví dụ: px, em, v.v.). "

Khi các phần tử được hiển thị trên màn hình, hầu hết các trình duyệt sẽ tự động xoay vị trí đến pixel gần nhất khi sử dụng mức thu phóng 100%. Ở các mức thu phóng cao hơn, bạn sẽ nhận thấy rằng các giá trị pixel phân số được nhận dạng.

+0

Bạn có một số tài liệu hỗ trợ câu trả lời? –

+1

@ KeesC.Bakker: Tôi vừa thêm nó. :) – Guffa

+2

Vấn đề là, các trình duyệt khác nhau sẽ khác nhau: http://stackoverflow.com/a/5587820/405015 – thirtydot