我有一个像这个css的元素:
element.style {
background-image: url(image.jpg);
}
.panel-image {
background-position: center center;
background-repeat: no-repeat;
-webkit-background-size: cover;
background-size: cover;
position: relative;
}
Run Code Online (Sandbox Code Playgroud)
我现在正试图使它成为一个固定的位置,所以当我尝试执行以下操作时:
.panel-image {
background-position: center center;
background-repeat: no-repeat;
-webkit-background-size: cover;
background-size: cover;
position: fixed;
width: 100%;
height: 200px;
}
Run Code Online (Sandbox Code Playgroud)
该元素不再出现在页面上.
有一个元素包围这个元素:
.twentyseventeen-panel {
overflow: hidden;
position: relative;
}
Run Code Online (Sandbox Code Playgroud)
这是html:
<article id="panel1" class="twentyseventeen-panel post-47 page type-page status-publish has-post-thumbnail hentry">
<div class="panel-image" style="background-image: url(https://2017.wordpress.net/wp-content/uploads/2016/10/pexels-photo-30724-2000x1200.jpg);">
<div class="panel-image-prop" style="padding-top: 60%"></div>
</div><!-- .panel-image -->
<div class="panel-content">
<div class="wrap">
<header class="entry-header">
<h2 class="entry-title">Our Drinks</h2>
</header><!-- .entry-header -->
<div class="entry-content">
<h2>Coffee and Espresso</h2>
<p><strong>Drip Coffee</strong> $2.50</p>
<p><strong>Espresso Shots</strong> $3.00</p>
<p><strong>Americano</strong> $4.50</p>
<p><strong>Cappuccino</strong> $4.50</p>
<p><strong>Macchiato</strong> $4.50</p>
<p><strong>Cortado</strong> $4.50</p>
<p><strong>Flat White</strong> $5.00</p>
<p><strong>Latte</strong> $4.50<br>
<em>hot or iced</em></p>
<p><strong>Mocha</strong> $4.50<br>
<em>hot or iced</em></p>
<p><strong>Cold Brew</strong> $4.00<br>
<em>regular or nitro</em></p>
<h2>Other Drinks</h2>
<p><strong>Chai</strong><strong> </strong>$4.50</p>
<p><strong>Iced Tea </strong>$3.50<br>
<em>green, black, or white</em></p>
<p><strong>Hot Tea</strong><strong> </strong>$3.00<br>
<em>english breakfast, ceylon, green, white, chamomile, rooibos, peach</em></p>
<p><strong>Flavored Sodas</strong><strong> </strong>$4.00<br>
<em>raspberry, blueberry, peach, mango, vanilla, mint</em></p>
</div><!-- .entry-content -->
</div><!-- .wrap -->
</div><!-- .panel-content -->
</article>
Run Code Online (Sandbox Code Playgroud)
我的问题是,我如何获得要修复背景图像的元素.
这是一个示例站点:
新答案:
如果你将 CSS 添加到图像中。它可以创建您需要的视差效果!
background-attachment: fixed;
position: fixed !important;
object-fit: cover;
height:100%;
Run Code Online (Sandbox Code Playgroud)
image它应该像这样插入到元素中。
<img src="http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis.jpg" width="2000" height="1200" alt="Grogenex" srcset="http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis.jpg 2000w, http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis-300x180.jpg 300w, http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis-768x461.jpg 768w, http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis-1024x614.jpg 1024w" sizes="100vw" style="
background-attachment: fixed;
position: fixed !important;
object-fit: cover;
height:100%;
">
Run Code Online (Sandbox Code Playgroud)
此外,如果您将其添加到它,.panel-image它也会为移动设备创建相同的视差!
.panel-image{
background-attachment: fixed !important;
}
Run Code Online (Sandbox Code Playgroud)
如果这能解决您的问题,请告诉我!
旧答案:
在您在问题中提供的初始 CSS 中,图像已经修复。你想实现这样的目标吗?
background-attachment: fixed;
position: fixed !important;
object-fit: cover;
height:100%;
Run Code Online (Sandbox Code Playgroud)
<img src="http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis.jpg" width="2000" height="1200" alt="Grogenex" srcset="http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis.jpg 2000w, http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis-300x180.jpg 300w, http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis-768x461.jpg 768w, http://www.grogenex.com/wp-content/uploads/2017/07/cropped-canabis-1024x614.jpg 1024w" sizes="100vw" style="
background-attachment: fixed;
position: fixed !important;
object-fit: cover;
height:100%;
">
Run Code Online (Sandbox Code Playgroud)