javascript - CSS 包含 + 位置部分在屏幕外

标签 javascript html css

我想要适合背景图像,使用 css background-size: contain;属性,但将其部分放置在屏幕外。我有一个带有透明部分的图像,我希望能够操纵“填充”,所以我认为将背景图像移动到 View 中是实现此目的的好方法:

.bottle {
    background-image: res://bottle_fill;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: contain;
    background-position: 50% 30%;
}

但似乎有了 contain 参数,图像就不能从 div 中“溢出”了?我尝试添加 overflow: hidden但它没有帮助。我怎样才能做到这一点?如果没有 css 方式,JavaScript 解决方案也可以。

更新:

https://jsfiddle.net/ghhxddnj/这是一个 JSFiddle - 尝试让笑脸一半在屏幕上,一半在屏幕外,同时它的大小 contain .正如一些评论所指出的,我知道这是一件有点奇怪的事情,但背景图像必须与原始文件的 div 内容(和 <image> 的大小相同)大小相同大小相同,因此如果它们都使用 contain,它们的大小将相同,我可以设置 x align居中然后使用y align来控制瓶子的装满量。

最佳答案

试试这个:

var image_url = $('#logo').css('background-image'),
    image;

// Remove url() or in case of Chrome url("")
image_url = image_url.match(/^url\("?(.+?)"?\)$/);

if (image_url[1]) {
    image_url = image_url[1];
    image = new Image();

    // just in case it is not already loaded
    image.src = image_url;
    var imgoffset = image.height;
    $('#logo').css('background-position',-imgoffset)
}

来源:How do I get background image size in jQuery?

编辑: https://jsfiddle.net/ckf55axs/

关于javascript - CSS 包含 + 位置部分在屏幕外,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36488398/

相关文章:

javascript - SVG - 如何将笔划从虚线变为实线?

javascript - 在 Ruby on Rails 中的 Javascript 中设置 session

javascript - 输入更改时从一组输入中删除内容

php - 从 javascript 向 php 传递参数

javascript - 使用 css 调整 jquery 表中的值

javascript - 通过使用 anchor 标记中的 data-id 属性,使用 jquery 将值传递到模态弹出窗口

css - Drupal Zen 主题中使用的 float 侧边栏方法

html - 仅在高分辨率下显示 div

javascript - 使用 onclick 函数传递参数时,应将其读取为字符串,但将其读取为变量

javascript:通过从文章中选择文本来显示共享按钮