これを追加する必要があります:
html, body{
height: 100%;
}
しかし、私は現在、BODYタグの下でしか編集できないCMSで立ち往生しています。つまり、ヘッダーに何も追加したり、スタイルシートを調整したりすることはできません。これを追加する唯一の方法は、bodyタグを過ぎてインラインにすることです。それが何らかの形でこれを解決するのであれば、このスペース内でPHPを実行することもできます。
私は不可能な状況にありますか、それとも解決策がありますか?
スタイルを調整できるPHPでjavascript文字列を出力できます。
print '<script>document.body.style.height = '100%'; document.body.parentNode.style.height = '100%';</script>';
とはいえ、HTML検証を気にしない場合や、HTML5 doctypeを使用している場合は、通常のスタイルタグをどこにでも追加できます。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.stylejavascriptを使用して、事後にこれらのタグのプロパティを変更できます。
すでに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>