CSS:帮助在 Chrome/Safari 中定位剪切图像。 IE 和 FireFox 看起来不错

发布于 2024-10-19 11:55:08 字数 1384 浏览 2 评论 0原文

使用 CSS 剪切图像,FireFox 和 IE7+ 看起来一切都很棒,但 Chrome 和 Safari 不能很好地接受 position:absolute 。它实际上使用绝对定位坐标,而不是保持与父容器的“相对”位置。

我尝试过放置容器并以不同的方式放置它们,但我没有任何运气。

不幸的是,我无法直接提供任何例子。

这是 HTML:

<div class="grayBkgd marginTop10Px grid_3 grayVideoContainer alpha">
    <a href="?ytID" class="noUnderlineHover curser-pointer">
        <div class="clip">
            <img src="an image" alt="" />
        </div><br />
        <div class="videoTextInfo">
            <p class="videoTitle">Optical Windows Overview
            </p>
        </div>
        <p class="grayText" style="float:right">0:37 mins</p>
    </a>
</div>

CSS:

<style type="text/css">
        .grayVideoContainer{
            text-align:center;
            padding:3px 0 5px 0
        }
        .clip img {
            position:absolute;
            margin-left:-58px;
            clip:rect(12px 120px 79px 0)
        }
        .videoTextInfo {
            min-height:60px;
            padding:70px 5px 0 5px;
            color:#000
        }
        .grayText {
            float:right;
            margin-top:-10px;
            padding:0 5px 0 0   
        }
</style>

有什么想法吗?

我尝试寻找 JQuery 插件来剪辑图像,看看是否可以更轻松地定位元素,但我没有找到任何有前途的插件。

Clipping an image with CSS and everything looks great with FireFox and IE7+, but Chrome and Safari are not accepting the position:absolutevery nicely. Instead of staying "relative" to the parent containers, it's in fact using the absolute positioning coordinates.

I've tried putting containers and positioning those in different ways, but I'm not having any luck.

Unfortunately, I can not provide any example directly.

Here's the HTML:

<div class="grayBkgd marginTop10Px grid_3 grayVideoContainer alpha">
    <a href="?ytID" class="noUnderlineHover curser-pointer">
        <div class="clip">
            <img src="an image" alt="" />
        </div><br />
        <div class="videoTextInfo">
            <p class="videoTitle">Optical Windows Overview
            </p>
        </div>
        <p class="grayText" style="float:right">0:37 mins</p>
    </a>
</div>

The CSS:

<style type="text/css">
        .grayVideoContainer{
            text-align:center;
            padding:3px 0 5px 0
        }
        .clip img {
            position:absolute;
            margin-left:-58px;
            clip:rect(12px 120px 79px 0)
        }
        .videoTextInfo {
            min-height:60px;
            padding:70px 5px 0 5px;
            color:#000
        }
        .grayText {
            float:right;
            margin-top:-10px;
            padding:0 5px 0 0   
        }
</style>

Any ideas?

I tried looking for JQuery plugins to clip the image and see if I'd have an easier time positioning the elements, but I didn't have very much luck finding any promising plugins.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

马蹄踏│碎落叶 2024-10-26 11:55:08

父容器是否已定位?如果没有,请尝试将 position:relative; 添加到 position:absolute; 子级的父级。相对定位不会改变父级在网站流程中的位置,但允许您拥有绝对定位的子级。

Are the parent containers positioned at all? If not, try to add position: relative; to the parent of the child that's position: absolute;. The relative positioning won't change the parent's position in the flow of your site but will allow you to have absolutely positioned children.

兲鉂ぱ嘚淚 2024-10-26 11:55:08

绝对定位元素的位置应使用 topleftright 和/或 bottom 指定。

请参阅:http://www.w3schools.com/css/pr_class_position.asp

< code>margin-left on .clip img 我可能希望不起作用。

An absolutely positioned element's position should be specified with top, left, right, and/or bottom.

See: http://www.w3schools.com/css/pr_class_position.asp

The margin-left on .clip img I might expect not to work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文