Nếu một phần tử tồn tại trên một trang có nhiều màu đường viền, góc mà các màu này gặp nhau tạo một đường viền theo mặc định. Điều này có vẻ giống như một lựa chọn kỳ lạ cho phong cách góc biên giới. Thay vào đó, tôi thích rằng một trong những biên giới "vượt qua" biên giới khác sao cho một đường thẳng được hiển thị thay thế.Loại bỏ hiệu ứng Bevel ở góc biên giới
Để minh họa cho hiệu ứng này, hãy xem xét những điều sau đây:
Xem ví dụ jsFiddle ví dụ tôi tạo here.
Hai mục trên cùng hiển thị hành vi mặc định, vát. Hai phần dưới cùng hiển thị hành vi mong muốn, mong muốn, trong trường hợp này, phần biên giới "overpowers" hoặc "ghi đè" góc của border-left và border-right.
Các đánh dấu cho các trường hợp trên:
<div class="container">
<div class="border">Item one</div>
<div class="border">Item two</div>
</div>
Và CSS:
.container {
margin: 5px;
width: 150px;
background: yellow;
}
.border {
padding: 5px;
border: 15px solid red;
border-top: 15px solid teal;
}
Các đánh dấu cho các trường hợp dưới:
<div class="container">
<div class="border-top"></div>
<div class="border-reg">Item one</div>
<div class="border-top"></div>
<div class="border-reg">Item two</div>
</div>
Và CSS:
.border-top {
border-top: 15px solid teal;
}
.border-reg {
border: 15px solid red;
border-top: 0;
padding: 5px;
}
Mặc dù phương pháp thứ hai tôi nghĩ ra sẽ tạo ra hiệu ứng tôi muốn, có vẻ như đây là điều không cần thiết tẻ nhạt đối với một cái gì đó mà tôi đã giả định là có trạng thái mặc định. Nếu tôi muốn biên giới trái để ghi đè lên các biên giới khác, ví dụ, tôi sẽ phải đối phó với một số float: left
và điên rồ yếu tố nội tuyến.
Câu hỏi (Cuối cùng)
Có phương pháp xóa hành vi bevel mặc định nào được quan sát trên tất cả các trình duyệt không? Mặc dù trường hợp chi tiết ở trên hầu hết là dễ dàng cho việc biên giới trên đầu hoặc biên giới ghi đè các góc, nhưng nó không dễ dàng như một công việc, ví dụ, nếu tôi cần biên giới bên trái và bên phải biên giới để ghi đè lên đầu biên giới và dưới cùng.
này có thể giúp: http://stackoverflow.com/question/11052202/can-i-have-different-colour-left-and-top-border-in-css-with-straight-join –