我需要添加这个:
html, body{
height: 100%;
}
但是,我目前被困在一个 CMS 中,我只能在 BODY 标记下进行编辑,这意味着我无法向标题添加任何内容、调整样式表或类似内容。我添加它的唯一方法是在正文标记之后内联。如果能以任何方式解决这个问题,我也可以在这个空间内执行 PHP。
我是处于不可能的情况还是有解决方案?
您可以使用 PHP 输出一个可以调整样式的 javascript 字符串:
print '<script>document.body.style.height = '100%'; document.body.parentNode.style.height = '100%';</script>';
也就是说,如果您不关心 HTML 验证和/或正在使用 HTML5 文档类型,您可以在任何地方简单地添加普通样式标签。如果您需要使用 PHP 输出它,只需将其放入一个字符串中(就像我对上面的 javascript 所做的那样):
print '<style type="text/css">html, body{ height: 100%; }</style>';
您可能还想查看作用域样式标签,这是 HTML5 的新添加:http: //dev.w3.org/html5/spec/the-style-element.html#attr-style-scoped
文档
print
- http://php.net/manual/en/function.print.phpelement.style
- https://developer.mozilla.org/en-US/docs/DOM/element.style您可以在事后使用 javascript 更改这些标签的属性。
如果您已经(或想尝试)使用 jquery,这很容易。只需运行此脚本:
$("html").css("height","100%");
如果您不想使用 jquery,那么您对大多数浏览器执行此操作的方式如下:
document.body.style.height = "100%";
或者
document.getElementsByTagName('body')[0].style.height = "100%";
很确定这会起作用,样式标签可以添加到任何地方:
<style>
html, body{
height: 100%;
}
</style>
如果您有权访问 javascript(您可以),您只需添加:
<script>
var body=document.getElementsByTagName('body')[0];
body.style.background='#000';
</script>