Tôi đang cố gắng tìm hiểu cách thực sự sử dụng CSS mà không cần sự trợ giúp của Bootstrap.Làm thế nào để nổi một khoảng trong một div?
Tôi đã sau đây: (có thể xem tại đây: http://plnkr.co/edit/FTCft1YOfQ4xy7FKWEHE?p=preview)
<div class="block">
<span class="pull-left">George</span>
<span class="pull-right">$23.20</span>
</div>
<div class="block">
<span class="pull-left">Carl</span>
<span class="pull-right">$4.81</span>
</div>
<div class="block">
<span class="pull-left">Steve</span>
<span class="pull-right">$0.34</span>
</div>
và CSS ...
.pull-left {
float: left;
}
.pull-right {
float: right;
}
.block {
display: block; /* since, div, I don't need this right ?*/
background-color: #87CEEB;
width: 100%;
}
Nếu tôi đã sử dụng Bootstrap, tôi có thể đạt được hiệu quả mong muốn, bằng cách đặt html của tôi vào div container
và thay vì sử dụng lớp tùy chỉnh của tôi là block
, hãy thêm lớp btn
và btn-block
.
Tôi muốn đặt các tên thẳng đứng ở bên trái và giá căn chỉnh theo chiều dọc ở bên phải. Tôi đang thiếu gì?
Sắp xếp giống như:
George $23.20
Carl $4.81
Steve $0.34
Xin đừng đề cập đến các bảng biểu, như tôi đã nói, tôi có thể sử dụng bootstrap và quấn html trên trong div.container
, và sau đó sử dụng button.btn.btn-block
thay vì div.block
tôi để đạt được chính xác cùng một hiệu ứng. Cảm ơn.
Cập nhật 1:
OK, tôi không mong đợi có được nhiều hơn có thể một hoặc hai giải pháp, nhưng có khá một chút. Ai đó có thể giải thích ưu/nhược điểm của từng giải pháp? Tôi thực sự thua lỗ ở đây.
Giải pháp # 1:
Thêm một new div element:
<div class="block">
<span class="pull-left">George</span>
<span class="pull-right">$23.20</span>
<div style='clear:both'></div>
</div>
Giải pháp # 2:
Thêm clear:both; overflow:auto;
đến lớp block
bởi thgaskel
Giải pháp # 3:
Điều này dường như tạo ra lợi nhuận giữa các khối.
Changedisplay:block
đến display:inline-block
cho lớp block
.
Giải pháp # 4:
Addfloat:left
đến lớp block
.
Giải pháp # 5:
phát hiện này trong khi rối tung xung quanh.Tạo một chọn mới:
.block:after {
content: ":" /* <--- at a complete loss why this works */
}
Giải pháp # 6:
Phát hiện này từ việc đọc this page.
.block:after {
content:"";
display: table;
clear: both;
}
Tôi cảm thấy khá choáng ngợp và không chắc chắn nên chọn gì. Cảm ơn.
Nhưng 'btn-block' trong Bootstrap có một' display: block '? –
Điều này làm việc, nhưng tôi không hiểu tại sao điều này đặt một lề giữa các khối trong khi các giải pháp khác không? –
@JPRichardson Tôi không nghĩ rằng ưu và khuyết điểm trong việc áp dụng css. Điều duy nhất tôi sẽ nói, nó không nên ảnh hưởng đến các phong cách khác trong html của bạn. – Praveen