我对 CSS 很陌生。我正在尝试围绕 <div>
创建边框我希望它限于 div
中元素的大小并根据新对象与可能在 div 中显示或隐藏的对象的比例动态调整大小。
我试过弄乱 border-radius:
和 em
测量,但我没有取得太大进展。我看过here和 here但两者都没有真正导致与 java 中的 window.pack() 等效的东西。我正在使用 css、javascript 和 jquery。我认为这不重要,但 html 主要是通过 ejs 编写的。
这是我目前拥有的,但它只是一个页面宽度的框:
{
border-style: solid;
border-color: blue;
border-radius: 1-4 length|% / 1-4 length|%;
}
最佳答案
好吧,我想我知道你在问什么。
您可能会看到的问题是,默认情况下,div 是 display:block
,这将导致它们在其容器中拉伸(stretch)(除非满足特定条件,例如显式大小调整、绝对定位, ETC)。
快速修复:为了让它们随内容增长或缩小,您必须将它们设置为 display:inline-block
;
您可能还应该学习 CSS 框模型。 Here's a decent article to help with that
边框位于 div 的“外部”。 div(如果设置为显示:inline-block)将默认为自动宽度(aka,width: auto
)和高度(height: auto
),这将导致它与它的 child 一起成长或缩小。由于边框位于 div 的外部,并且 div 不断扩大和缩小,所以你去吧。
稍微高级一点,在div内容和边框之间添加padding,只需要在CSS中设置padding:例如padding: 3px
。填充也“存在于”div 之外,但在边界之前。如果这是有道理的话。
编辑:另外,如果您不熟悉该工具:You might try playing with your HTML and CSS in something like JSFiddle .
关于javascript - css 中 java window.pack() 的等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20223385/