2015-02-27 60 views
16

Tôi đang cố gắng để tạo ra các vòng tròn với css, nhưng wan't để sử dụng lớp giả :: trướcPseudo lớp :: trước - tạo css vòng tròn

này cần được như thế (đối với danh sách các trạm tàu ​​điện ngầm) :

.subway-item{ 
// css for text item going after circle 
} 
.subway-item::before{ 
    width:15px; 
    border-radius: 15px; 
    -moz-border-radius: 15px; 
    -webkit-border-radius: 15px; 
    background-color:#69b6d5; 
} 

Tôi biết rằng nó có thể được thực hiện với phần tử bổ sung trước văn bản hoặc hình ảnh. Nhưng muốn biết là có thể sử dụng các thuộc tính như vậy trong :: trước

+0

Có vẻ như bạn đã quên chỉ định thuộc tính 'nội dung' .. nếu không được chỉ định, phần tử giả sẽ không được tạo. Phần tử cũng là 'inline' theo mặc định, có nghĩa là bạn sẽ cần đặt' display' thành 'inline-block' nếu bạn muốn đặt kích thước trên nó. Có vẻ như bạn cũng sẽ cần chỉ định một' chiều cao '. –

+0

http://jsfiddle.net/cpgrscae/1/ Tạo ở đây, có thể bạn có thể cố gắng giúp đỡ, điều này cũng nên có thêm phong cách cho các màu khác nhau –

+2

Xem ví dụ được cập nhật này - http://jsfiddle.net/rL5g0wxh/ –

Trả lời

30

Bạn cũng cần đặt content, heightdisplay để làm cho nó thực sự hiển thị phần tử giả.

Ví dụ:

.subway-item::before{ 
    content: ''; 
    display: inline-block; 
    width: 15px; 
    height: 15px; 
    -moz-border-radius: 7.5px; 
    -webkit-border-radius: 7.5px; 
    border-radius: 7.5px; 
    background-color: #69b6d5; 
} 

Lưu ý: Nó tốt hơn để viết các thuộc nhà cung cấp cụ trước thuộc tính tiêu chuẩn (border-radius trong trường hợp của bạn).

+0

điều này sẽ không hoạt động, http://jsfiddle.net/cpgrscae/2/ –

+0

@AlexVeryutin Bây giờ, tôi đã thay đổi 'block' thành' inline-block' một vài phút trước khi tôi thấy fiddle của bạn . – aaronk6

+1

Sẽ hợp lý hơn nếu đặt bán kính đường viền thành một nửa chiều rộng (hoặc chiều cao). –

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