實際上,我正在使用MVC結構處理PHP項目,其中包括DOCTYPE &在使用ob°開始的輸出緩衝期間通過單個文件的HEAD標記()。使用PHP緩衝輸出時min-height CSS屬性不起作用ob_start()
問題出現在我要爲可能頁面容器聲明一個最小高度屬性時,爲了將頁腳粘貼到頁面的底部。 ob_start() - ob_get_clean()使用似乎禁止瀏覽器及時訪問這些屬性,因此它們無法評估高度值。
這是我的index.php文件:
<?php
include_once('global/init.php');
ob_start();
if(isset($_GET['module'])){
$module = dirname(__FILE__).'/modules/'.htmlspecialchars($_GET['module']).'/';
$action = (isset($_GET['action'])) ? htmlspecialchars($_GET['action']).'.php' : 'index.php';
if(!file_exists($module.$action)){
include('global/home.php');
}else{
include($module.$action);
}
}else{
include('global/home.php');
}
$content = ob_get_clean();
include_once('global/header.php');
echo $content;
include_once('global/footer.php');
header.php文件中包含的文檔類型,和HTML的第一基礎:
<html>
<head>
<meta charset='UTF-8' />
<title><?php echo "LiveSession".' '.DOMAIN_INFOS;?></title>
<meta name='description' content='<?php echo $_SESSION['currentDesc'];?>' />
<meta name='keywords' content='<?php echo $_SESSION['currentKWds'];?>' />
<link rel='stylesheet' media='screen and (max-width:480px)' href='css/smartphones.css' />
<!-- TABLETS -->
<script type='text/javascript' src='scripts/jquery.1.7.js'></script>
<script type='text/javascript' src='scripts/poll_edit.js'></script>
<script type='text/javascript' src='scripts/smartphones.js'></script>
</head>
<body>
<div id='page'>
<div id='header'>
<h1><a href='index.php'>InteractivePollSession</a></h1>
<?php
if(is_connected_user()){
echo "<span id='disconnector'><a href='index.php?module=members&action=dscnx' title='disconnect'>Disconnect</a></span>";
}
?>
</div>
<div id='contentWrap'>
頁腳:
</div>
<div id='footer'>
<span id='central-footer'>© <a href='http://www.jsteitgen.com'>JSTeitgen</a></span>
</div>
</div>
</body>
A nd一個基本的CSS例:
body{height:100%;}
#page{min-height:100%; position:relative;}
#footer{position:absolute; bottom:0; width:100%;}
是否有人知道如何解決這個使用ob_start()? 當然,所有其他的CSS規則做工精細,除了這...
感謝的
JS
這似乎不太可能,服務器端代碼會影響發送HTML/CSS的渲染。如果你刪除輸出緩衝,你能確認它是否有效? – jeroen