2010-10-06 26 views
26

Đối với CSS rất kinh nghiệm, đánh dấu này xuất ra hộp kiểm có nhãn Value1 ở bên phải, nhưng Value1 quá gần hộp kiểm.Đệm giữa hộp kiểm và nhãn

<dd id="rr-element"> 
    <label for="rr-1"> 
     <input type="checkbox" value="1" id="rr-1" name="rr[]"> 
     Value 1 
    </label> 
</dd> 

Vì vậy, tôi đang cố gắng tạo hiệu ứng padding-right ở bên phải hộp kiểm, nhưng nó không hoạt động. Hộp kiểm và nhãn di chuyển cùng nhau. Làm thế nào tôi có thể nhắm mục tiêu hộp kiểm chỉ hoặc văn bản của nó chỉ vì vậy tôi tạo ra một khoảng cách padding?

dd label input { 
    padding-right:100px; 
} 
+0

Tại sao hộp kiểm của bạn bên trong nhãn? – casablanca

+4

@casa: bởi vì nó tránh có khoảng cách không rõ ràng giữa nhãn và hộp kiểm. – BalusC

+0

@BalusC: Thú vị, tôi chưa bao giờ nhận thấy điều đó trước đây. – casablanca

Trả lời

31

Sử dụng margin-right. padding nằm bên trong phần tử và thường hoạt động hài hước với các yếu tố đầu vào bởi vì chúng được hiển thị bằng các thành phần gốc tự nhiên của hệ điều hành và là một mớ hỗn độn để tùy chỉnh nói chung.

JSFiddle here

+0

Hài hước Tôi đã thử trước khi đăng và nó không hoạt động. Hóa ra đó là vấn đề xếp tầng, phải thêm '! Important' – jblue

+3

@jblue vào trường hợp đó, tôi muốn giới thiệu một đầu vào nhãn« dd # rr-element {margin-right: 100px; } '-'! quan trọng' thường tạo ra nhiều vấn đề hơn là giải quyết –

0

Không khoảng cách không thể nhấp vào giữa hộp và nhãn.
Không ngắt kết nối đường kẻ của hộp kiểm và nhãn.
Không có khoảng trắng nào được thêm vào bằng mã thụt đầu dòng.
Dễ đọc hơn.

<dd id="rr-element"> 
    <input type="checkbox" value="1" id="rr-1" name="rr[]"> 
    <label for="rr-1">Value 1</label> 
</dd> 

<style> 
#rr-element { 
    white-space: nowrap; 
} 

#rr-element label { 
    padding-left: 0.4em; 
} 
</style> 
+0

Toàn bộ thuộc tính thừa 'for', khi bạn * nên * đặt' hộp kiểm' bên trong nhãn. –

+0

Nhãn có thể kèm theo phần tử biểu mẫu. Nhưng nó không phải là sạch sẽ. Cả hai phương pháp đều hợp lệ. Cả hai đều có ưu và khuyết điểm của họ. Cho phép xem hộp kiểm của bạn bên trong nhãn mà đạt được tất cả những điều tôi liệt kê. – NOYB

+0

@Dark Absol - Dự phòng! = Xấu. "Tuy nhiên, ngay cả trong những trường hợp như vậy, nó được coi là thực hành tốt nhất để đặt thuộc tính cho bởi vì một số công nghệ hỗ trợ không hiểu mối quan hệ tiềm ẩn giữa nhãn và tiện ích." https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/How_to_structure_an_HTML_form – NOYB

Các vấn đề liên quan