2012-03-06 64 views
7

Tôi có một div mà tôi đang áp dụng các góc tròn.Góc tròn trong Firefox: khoảng cách giữa đường viền và nền

Đây là số demo fiddle của tôi.

<div>&nbsp;</div> 
div { 
    margin: 20px; 
    width: 250px; 
    height: 250px; 
    -moz-border-radius: 15px; 
    -webkit-border-radius: 15px; 
    -khtml-border-radius: 15px; 
    border-radius: 15px; 
    background-color: #4c66a1; 
    border: 2px solid #4c66a1; 
} 

Tôi cũng có một màu đường viền và nền áp dụng cho div này. Vấn đề phát sinh trong Firefox. Có một khoảng trắng nhỏ giữa đường viền và màu nền của div (xem hình bên dưới). Nó là rất tối thiểu, nhưng mọi người đã nhận thấy nó dù sao. Nó trông giống như một hiệu ứng ánh sáng ở góc.

Đây có phải là sự cố đã biết với các góc được làm tròn trong Firefox không? IE, Chrome và Opera đều ổn.

FYI/Vì mục đích minh họa vấn đề tôi đã tạo đường viền và màu nền giống nhau mặc dù nó không cần thiết. Nó làm cho khoảng trống nổi bật hơn.

 Firefox  Chrome/IE/Opera

enter image description here                 enter image description here

+0

nó không tái tạo khi tôi đổi màu đỏ thành – FosterZ

+0

@FosterZ: Màu đỏ vẫn làm cho tôi. Chỉ ít đáng chú ý hơn. Crank bán kính lên đến 50 và bạn sẽ thấy nó, chỉ là về. Edit: thực sự, tôi vẫn có thể nhìn thấy nó ở 15, mắt đại bàng tôi;) – musefan

+0

yep, đó là lý do tại sao tôi sử dụng màu sắc tương tự trong mẫu để minh họa vấn đề tốt hơn. màu sắc tươi sáng sẽ đưa mắt của bạn ra khỏi nó và vấn đề là ít đáng chú ý hơn. nếu bạn thực sự muốn nhìn thấy nó xảy ra cố gắng tạo ra một vòng tròn bằng cách sử dụng bán kính biên giới. khoảng trắng sẽ bao quanh toàn bộ div. –

Trả lời

3

Điều thú vị là, nếu chúng ta thay đổi nó để chấm, màu trắng biến mất:

div { 
    margin: 20px; 
    width: 250px; 
    height: 250px; 
    -moz-border-radius: 30px; 
    -webkit-border-radius: 30px; 
    -khtml-border-radius: 30px; 
    border-radius: 30px; 
    background-color: #4c66a1; 
    border: 2px dotted #4c66a1; 
} 

http://jsfiddle.net/5yAkZ/23/

EDIT có css hợp lệ trước đây

+0

đó là css không hợp lệ. bạn phải chỉ định kiểu hoặc đường viền sẽ không hiển thị. –

+0

Bạn chính xác, những gì tôi đã không hợp lệ. Tuy nhiên, nếu chúng ta thay đổi nó để chấm, vấn đề xuất hiện để biến mất (ít nhất là vào cuối của tôi) - hoạt động như một lỗi với biên giới rắn tròn. – Chris

+0

wow, bắt rất tốt! từ điều này tôi đã làm một số thử nghiệm và thấy rằng nếu bạn sử dụng phong cách 'double' ... vấn đề là cố định! vì biên giới của tôi chỉ là '2px' bạn thực sự không thể phát hiện đường viền kép, nó chỉ đáng chú ý tại>' 3px', nơi nó chia thành 2 đường viền riêng biệt. Cảm ơn bạn rất nhiều vì đã giúp đỡ của bạn! Điều này nên được nộp trong một báo cáo lỗi ở đâu đó ... –

0

Kiểm tra này ra là thế này bạn muốn JsFiddle

<div id='ex1' class='exampleRound'>&nbsp;</div> 
#ex1{ 
    border-radius: 50px; 
    height: 200px; 
    width: 200px; 
} 
.exampleRound { 
    background: none repeat scroll 0 0 #4c66a1; 
    border: 5px solid pink; 
    font-size: 20px; 
    font-weight: bold; 
    margin-bottom: 30px; 
    padding: 20px 40px; 
    margin:20px 
} 
+0

chuyển những màu sắc sáng ra cho âm thanh nhẹ nhàng hơn và vấn đề vẫn còn tồn tại. –

+0

:) cho tôi biết màu sắc, coz tôi không thể nhìn thấy nó ngay bây giờ .. – FosterZ

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