Ít nhất khi bạn cuộn qua cạnh trên mac, bạn sẽ thấy trang di chuyển xuống và để lại một màu đồng bằng phía sau nó. Iv'e đã tìm ra bạn có thể thay đổi màu sắc bằng cách thiết lập màu nền của body
. Nhưng có cách tiếp cận nào khác không? Bởi vì đôi khi tôi cần một màu khác nhau ở trên cùng và dưới cùng, v.v.Đặt màu cho các phần trang phụ hiển thị khi cuộn băng cao su
Trả lời
Giải pháp của tôi đã bị lừa một chút và sử dụng linear-gradient()
trên thẻ html
hoặc body
để kiểm soát màu nền được phân đoạn cho một dự án cụ thể.
Thứ gì đó như thế này sẽ tách nền thành một nửa và chăm sóc các trình duyệt hiện đại.
background: -webkit-gradient(
linear,
left top,
left bottom,
color-stop(0.5, #8BC63E),
color-stop(0.5, #EEEEEE)
);
background: -o-linear-gradient(bottom, #8BC63E 50%, #EEEEEE 50%);
background: -moz-linear-gradient(bottom, #8BC63E 50%, #EEEEEE 50%);
background: -webkit-linear-gradient(bottom, #8BC63E 50%, #EEEEEE 50%);
background: -ms-linear-gradient(bottom, #8BC63E 50%, #EEEEEE 50%);
background: linear-gradient(to bottom, #8BC63E 50%, #EEEEEE 50%);
Tôi đã có hỗn hợp may mắn nhận được các hành vi tương tự trên iOS, và có vẻ là phụ thuộc vào cách bố trí cụ thể.
Tôi cần đạt được điều gì đó tương tự.
Giải pháp được đăng bởi @tksb không hoạt động đối với tôi trên Chrome (OS X), có vẻ như Chrome sử dụng background-color
để xác định nền băng cao su và bỏ qua background-image
.
Các giải pháp tôi đã tìm thấy là sử dụng một chút JS
// create a self calling function to encapsulate our code
(function(document, window) {
// define some variables with initial values
var scrollTop = 0;
var resetTimer = null;
// this function gets called when you want to
//reset the scrollTop to 0
function resetScrollTop() {
scrollTop = 0;
}
// add an event listener to `body` on mousewheel event (scroll)
document.body.addEventListener('mousewheel', function(evt) {
// on each even detection, clear any previous set timer
// to avoid double actions
window.clearTimeout(resetTimer);
// get the event values
var delta = evt.wheelDelta;
var deltaX = evt.deltaX;
// add the amount of vertical pixels scrolled
// to our `scrollTop` variable
scrollTop += deltaX;
console.log(scrollTop);
// if user is scrolling down we remove the `scroll-up` class
if (delta < 0 && scrollTop <= 0) {
document.body.classList.remove('scroll-up');
}
// otherwise, we add it
else if (delta > 0 && scrollTop > 0) {
document.body.classList.add('scroll-up');
}
// if no wheel action is detected in 100ms,
// we reset our `scrollTop` variable
window.setTimeout(resetScrollTop, 100);
});
})(document, window);
body {
margin: 0;
}
body.scroll-up {
background-color: #009688;
}
section {
min-height: 100vh;
background-color: #fff;
}
header {
height: 100px;
background-color: #009688;
color: #fff;
}
<section id="section">
<header>
this demo works only on full-screen preview
</header>
</section>
Dưới đây là một bản demo đầy đủ màn hình để kiểm tra nó: http://s.codepen.io/FezVrasta/debug/XXxbMa
Bạn có thể đăng phiên bản jquery để dễ đọc hơn không? – harryparkdotio
jQuery dường như không cần thiết ở đây, JS cũ rõ ràng là đủ rõ ràng IMHO –
Tôi thấy khó đọc, hơi phức tạp và được thiết kế – harryparkdotio
- 1. Làm cho các loại mủ cao su cho văn bản trên hai trang đối diện
- 2. Sử dụng bộ nhớ cao cho núm vú cao su
- 3. Đặt thanh cuộn dọc hiển thị
- 4. Trong vue.js 2, đo chiều cao của một thành phần khi các khe được hiển thị
- 5. UITextView không hiển thị cho đến khi nó được cuộn
- 6. IE9 hiển thị đường màu trắng ở cuối trang
- 7. iReport Hiển thị sai hiển thị giữa chi tiết băng và chân trang
- 8. ApartmentState cho núm vú cao su
- 9. Hiển thị từng phần sau khi tải trang
- 10. Cách để hiển thị thành phần React trên cuộn
- 11. UICollectionView chỉ hiển thị chân trang cho phần cuối
- 12. Hiển thị thanh cuộn dọc Div
- 13. Luôn hiển thị thanh cuộn của trình duyệt để ngăn không cho trang nhảy
- 14. carouFredSel: Hiển thị một phần?
- 15. Khoảng cách cao su \ hline
- 16. Android ScrollView đặt chiều cao cho nội dung được hiển thị
- 17. sự thừa nhận trong mủ cao su
- 18. wkhtmltoimage hiển thị nhiễu màu cho các PNG trong suốt
- 19. Ngăn cuộn nền khi hiển thị cửa sổ bật lên
- 20. Chèn tệp pdf vào mủ cao su
- 21. Thay đổi màu nền tiêu đề khi cuộn trang
- 22. Đặt màu nền cho phần UICollectionView?
- 23. Làm cho thanh cuộn chính luôn hiển thị
- 24. Tạo tập tin thẻ cho mủ cao su cho các nhãn và các mặt hàng yếm
- 25. iOS 5 - gif động hiển thị màu sai đôi khi
- 26. Fullcalendar không hiển thị màu khi sử dụng eventRender
- 27. Số liệu ký quỹ bằng cao su
- 28. workflow giữa cao su và R screwed
- 29. UITableview không hiển thị ô cuối cùng khi cuộn xuống
- 30. Bóng không hiển thị khi màu nền rõ ràng màu
Tôi không nhìn thấy này hoạt động trên các phần tử cơ thể hoặc html trong Chrome 64. – jtheletter