Html 为什么iframe比body大?iframe在100vh时添加垂直滚动条

Html 为什么iframe比body大?iframe在100vh时添加垂直滚动条,html,css,iframe,Html,Css,Iframe,假设我有非常简单的标记。我希望iframe占据100%的屏幕高度,但设置100vh仍在添加滚动条 *{ 框大小:边框框; } 身体{ 保证金:0; } iframe{ 宽度:100%; 高度:100vh; } 请检查此项。 *{ 框大小:边框框; } 身体{ 保证金:0; } iframe{ 宽度:100%; } 请检查此项。 *{ 框大小:边框框; } 身体{ 保证金:0; } iframe{ 宽度:100%; } 假设您希望全屏显示: 添加显示:块 添加'allowfullscreen'属

假设我有非常简单的标记。我希望iframe占据100%的屏幕高度,但设置
100vh
仍在添加滚动条

*{
框大小:边框框;
}
身体{
保证金:0;
}
iframe{
宽度:100%;
高度:100vh;
}
请检查此项。
*{
框大小:边框框;
}
身体{
保证金:0;
}
iframe{
宽度:100%;
}
请检查此项。
*{
框大小:边框框;
}
身体{
保证金:0;
}
iframe{
宽度:100%;
}

假设您希望全屏显示:

  • 添加
    显示:块
  • 添加
    'allowfullscreen'
    属性 改为:

    <iframe scr="https://en.wikipedia.org/wiki/Main_Page" allowfullscreen></iframe>
    

    假设您希望全屏显示:

  • 添加
    显示:块
  • 添加
    'allowfullscreen'
    属性 改为:

    <iframe scr="https://en.wikipedia.org/wiki/Main_Page" allowfullscreen></iframe>
    

    您可以简单地解决此问题,只需在
    iframe
    中添加一个
    浮点:左
    显示:块

    *{
    框大小:边框框;
    }
    身体{
    保证金:0;
    }
    iframe{
    宽度:100%;
    高度:100vh;
    填充:0;
    显示:块;
    }

    您可以简单地解决此问题,只需在
    iframe
    中添加一个
    浮点:左
    显示:块

    *{
    框大小:边框框;
    }
    身体{
    保证金:0;
    }
    iframe{
    宽度:100%;
    高度:100vh;
    填充:0;
    显示:块;
    }

    您无法控制跨域内容的高度。如果尝试将外包html页面上载到html页面中,则仅当您有权访问源内容或服务器时,才能控制内容大小。然后你可以添加一些JS,你就不会有额外的滚动了


    您无法控制跨域内容的高度。如果尝试将外包html页面上载到html页面中,则仅当您有权访问源内容或服务器时,才能控制内容大小。然后你可以添加一些JS,你就不会有额外的滚动了


    iframe
    具有默认的
    display:inline
    ,因此将
    display
    属性更改为类似
    display:block
    的内容可以解决此问题


    另外,如果
    iframe
    是柔性项(柔性容器的子项,在当前情况下为
    body
    添加
    display:flex
    将使
    iframe
    成为柔性项)它也会有帮助,因为它将被隐式地阻止。

    iframe
    具有默认的
    display:inline
    ,因此将
    display
    属性更改为类似
    display:block
    的内容可以解决此问题



    另外,如果
    iframe
    是flex项(flex容器的子项,在当前情况下为
    body
    添加
    display:flex
    ,将使
    iframe
    成为flex项),它也将有帮助,因为它将被隐式地阻止。

    因为高度。默认情况下,body具有填充和成像功能。由于高度原因,请尝试在iFrame中将其设置为0。默认情况下,body具有填充和图像。尝试在iframeNo中将其设置为0,我希望iframe获得100%的屏幕高度,更新问题。好的,使用float:left;谢谢,这是目前唯一有效的答案。你能解释一下为什么会发生这种情况吗?不,我想让iframe占据100%的屏幕高度,更新问题。好的,使用float:left;谢谢,这是目前唯一有效的答案。你们能解释一下为什么会发生这种情况吗?我并不是想控制域名内容的高度。我只想
    iframe
    在不考虑内容的情况下获得100%的屏幕高度。这就是问题所在:“不考虑内容”。您无法知道iframe内容高度是多少。这无关紧要。我想设置100%的屏幕高度。我已经试着按照你说的做了,将其设置为100%,但是你将div设置为100%,它将不会显示100%。也许你会在这里找到一个解决方案:我不会试图控制域内容的高度。我只想
    iframe
    在不考虑内容的情况下获得100%的屏幕高度。这就是问题所在:“不考虑内容”。您无法知道iframe内容高度是多少。这无关紧要。我想设置100%的屏幕高度。我已经试着按照你说的做了,设置为100%,但是你将div设置为100%,它不会显示100%。也许你会在这里找到一个解决方案:只想添加一个这样的答案。也许allso会添加一个“溢出:隐藏”-但是这个答案会让一切就绪。溢出隐藏可能是删除iframe ends接受答案的
    display:block
    @JishnuVS您能删除
    -moz-box-sizing
    -webkit-box-sizing
    和所有这些供应商的东西吗?它们适用于非常旧的浏览器。只是想添加一个这样的答案。也许allso会添加一个“溢出:隐藏;”-但是这个答案的效果应该很好。溢出隐藏可能是删除iframe ENDSACEPTING答案
    display:block
    @JishnuVS您能删除
    -moz box size
    ,吗,
    -webkit盒子尺寸
    和所有这些供应商的东西?它们适用于非常旧的浏览器。添加
    allowfullscreen
    对我毫无帮助。移除高度是无意义的。它将如何帮助我获得iframe的100%高度?添加
    allowfullscreen
    对我毫无帮助。移除高度是无意义的。它将如何帮助我获得iframe的100%高度?