CẬP NHẬT
tạo ra một số tối thiểu/thực nghiệm jQuery plugin: https://gist.github.com/3177804
bạn sẽ có thể sử dụng nó như thế này: http://jsfiddle.net/7q3Zu/2/
tải về và bao gồm các plugin https://raw.github.com/gist/3177804/556074672de8f200327d83f0146d98533c437ac3/jquery.magnetic.js rồi gọi nó như thứ là:
$(function() {
$('.container').magnetic({ //call it on some scrollable container
selector: '.object', //what to fix
left: 180, //when to fix (px)
right: 500 //when to unfix (px)
});
});
atm đây chỉ là một thử nghiệm với không bảo đảm làm việc trong bất kỳ trình duyệt
(vì vậy cảm thấy tự do để lấy ý chính và cải thiện nó :)
Như đã đề cập trong các ý kiến, bạn có thể làm điều này với Javascript.
Dưới đây là ví dụ sử dụng sáng jQuery:
http://jsfiddle.net/7q3Zu/
HTML
<div class="container">
<div class="object"></div>
</div>
JS
$(function() {
var obj = $('.object');
$(document).on('scroll', function() {
var offset = $(this).scrollLeft()
//fix the position a some point
if (offset >= 200) {
obj.css('position', 'fixed').css('left', '20px');
}
//..and unfix it later
if (offset >= 500) {
obj.css('position', 'absolute').css('left', '500px');
}
});
});
CSS
.container{
width: 4000px;
padding: 20px;
margin: 20px;
border: 1px solid #ccc;
height: 400px;
position: relative;
}
.object{
position: absolute;
height: 400px;
width :100px;
background: red;
left: 200px;
}
Nguồn
2012-07-25 12:09:36
Có nội dung thực tế trong div màu đỏ không? Tôi nghĩ rằng nó sẽ là có thể với một hình ảnh nền và các ô màu trắng nền trong suốt với một biên giới trái và phải dày. –
Điều này không thể sử dụng CSS. Bạn có thể kiểm tra MARQUEE bằng CSS và HTML nhưng điều này sẽ không giải quyết được mục đích của bạn mà tôi nghĩ. Bạn phải sử dụng javascript hoặc jQuery. Vui lòng thêm các thẻ này vào thẻ của bạn. – Narendra
điều này giải thích cách thực hiện điều đó: http: // jqueryfordesigners.com/iphone-like-sliding-headers/ – Kristian