结帐Pinterest 的启动页面- **(确保您已注销您的帐户,否则您不会看到启动页面。)底部的 Macbook 图像,它是响应式的,并且根据浏览器窗口的大小缩小和扩展。
愚蠢的问题......他们是怎么做到的?以及如何使用 Twitter Bootstrap 来做到这一点?
结帐Pinterest 的启动页面- **(确保您已注销您的帐户,否则您不会看到启动页面。)底部的 Macbook 图像,它是响应式的,并且根据浏览器窗口的大小缩小和扩展。
愚蠢的问题......他们是怎么做到的?以及如何使用 Twitter Bootstrap 来做到这一点?
如果您查看<script>
页面上的块,您可以看到它是如何完成的。它基本上只是一个调整大小的侦听器。这是一个简化版本:
var htAboveImage = $content.height(),
naturalImageHt = 450,
padding = 150,
minImageHt = 100;
var changeFunc = function() {
var windowHt = $window.height();
var imageHt = Math.min(
Math.max(windowHt - htAboveImage - padding, minImageHt)
naturalImageHt,
);
$image.height(imageHt);
};
changeFunc();
$(window).on("resize", changeFunc);
也不需要更新宽度,因为<img>
当你在 CSS 中只调整一个维度时,s 会自动按比例调整大小。但是 Pinterest 上的完整代码还会更新图像上方内容的填充,以使其保持垂直居中。
顺便说一句:当遇到此类问题时,Chrome 的开发者工具是您的朋友!仔细使用这些工具,只需要一分钟就可以看到发生了什么: