javascript - 使用封面背景图像调整元素大小

标签 javascript html css background bootstrap-4

我不完全确定这是否像它应该的那样简单。我一直在尝试不同的方法,但我似乎无法理解它。

我的首页有一个封面部分,里面有一个 Logo 和一个按钮:

<section id="cover">

        <div id="cover-caption" class="animated fadeInDown">

            <p style="padding-bottom: 2rem;"><img src="http://bizcentralusa.com/wp-content/uploads/2016/05/placeholder-sample-logo.png" alt="Sample Logo" /></p>
            <p class="lead">
                <a class="btn btn-primary btn-lg" data-scroll href="#getStarted" role="button">GET STARTED <i class="fa fa-angle-right animated wobble infinite" aria-hidden="true"></i>
                </a>
            </p>

        </div>

    </section>

封面的背景是一张笔记本电脑的图片,它占了页面的一半。我希望 Logo 和按钮位于页面顶部和笔记本电脑屏幕开始之间。

这就是我到目前为止所了解的(我认为与让我解释相比,您更容易直观地看到我想要实现的目标)...

Demo

通常我会在#cover-caption 容器上添加一些填充,直到它向下推到我想要的位置,但这并不适用于所有屏幕分辨率。它在我正在编辑的 PC 上看起来不错,但是当我在我的 Macbook 上测试它时,虽然 Logo 和按钮位于相同的位置,但背景图像已经改变,因为浏览器高度不同。我想我想做的是让我的 Logo 和按钮自动调整它们的位置,以便在浏览器窗口的高度发生变化时随背景图像一起变化。这这甚至可能吗?

This is my full code

最佳答案

这应该很容易通过 css flexbox和视口(viewport)高度。

#cover-caption{
  display: flex;
    height: 66vh;
    flex-direction: column;
  justify-content: center;
}
#cover-caption > *{
  flex: 0 1 auto;
}

参见改编 fiddle

关于javascript - 使用封面背景图像调整元素大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42691267/

相关文章:

jquery - 构建 iPhone/移动 Web 应用程序的架构

Javascript - 将对象键打印到 HTML

css - 带有 Awesome 图标的 Telerik RadButton 左对齐

javascript - 将变量从 Javascript 传递到 Zend 框架 Controller

javascript - jquery 触摸导航

javascript - 添加新 div 时 jQuery 事件失败

javascript - 在 jQuery 中添加或删除类

html - CSS 类和后代选择器实践

javascript - 在 html5 中,如果您创建游戏等,是否会公开所有源代码?

javascript - 如何从数组中过滤掉非日语字符?