html - 仅使用CSS将图片制作成圆形 View

标签 html css user-interface frontend

下面的代码有效

<div style="width:485px; height:485px; border-radius:50%; overflow:hidden;">
<img src="avatar.png" alt="Squared Avatar" />
</div>

但是这些代码不会,

<div style="width:100%; height:100%; border-radius:50%; overflow:hidden;">
<img src="avatar.png" alt="Squared Avatar" />
</div>

我只是想知道为什么宽度和高度必须是px才能达到这样的效果,而不是百分比?我知道使用百分比比使用像素更灵活。

这里是 jsfiddle ,如果我们调整结果 Pane 的大小,您可以看到 P1 使用百分比自动调整大小,所以问题是这个 100% 来自哪里?我以为100%是指图片的宽高,而不是边框​​。

=====更新:12/26/2014======

谢谢大家,@jmore009 已经回答了问题。

我忘记了 div 从其父 div 继承宽度和高度,所以 100% 来自 body 元素,默认情况下它会在浏览器调整大小时调整大小。 这是我更新的 jsfiddle .

最佳答案

parent 的百分比工作。如果您没有定义 parent 的 height 和/或 width,它表示 100%50% (最高级别的父级是 bodyhtml)那么你就没有什么可做的了。

关于html - 仅使用CSS将图片制作成圆形 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27653348/

相关文章:

html - 什么是 CSS 中的 flood-color 和 lighting-color 定义?

php - 在 PHP dom 中编辑 html - 将 CSS 更改为 Img 属性

jquery - 容器高度设置为容器中最后一个子项的 css 顶部 + 几像素

java - 使用 Java Swing 进行纸牌游戏中的视觉反馈

python - 如何使用 tkinter 和 python oop 将项目/小部件放入其他类中

JQuery UI 两个具有不同值的相关 slider

javascript - 在 jQuery ui 中通过 id 切换语句以显示不同的菜单

javascript - d3 布局未定义

html - 如何在 asp.net MVC 中应用完整的背景图像

css - 为什么导航栏出现在滚动条的顶部?