PHP页面未使用visibility:none或display:none隐藏DIV
我正在处理的PHP页面可以在几种状态下加载,在默认状态下,我需要一个DIV层可见,另一个不可见,反之亦然。 脚本有javascript备份来做同样的事情,但是我需要css来为那些在禁用javascript的情况下查看页面的人工作 第一个DIV的代码工作正常:PHP页面未使用visibility:none或display:none隐藏DIV,php,javascript,css,html,hidden,Php,Javascript,Css,Html,Hidden,我正在处理的PHP页面可以在几种状态下加载,在默认状态下,我需要一个DIV层可见,另一个不可见,反之亦然。 脚本有javascript备份来做同样的事情,但是我需要css来为那些在禁用javascript的情况下查看页面的人工作 第一个DIV的代码工作正常: <pre><</pre>div name="MoreDiv" ID="MoreDiv" style="position: absolute;top: 10px; left: 15px; width: 95%;
<pre><</pre>div name="MoreDiv" ID="MoreDiv" style="position: absolute;top: 10px; left: 15px; width: 95%; font-size:1.3em;
<?php
if(isset($_GET['page']))
{
$ipi = getenv("REMOTE_ADDR");
$u = getenv ("HTTP_REFERER");
$httpagenti = getenv ("HTTP_USER_AGENT");
$page = $_GET['page'];
switch($page)
{
case 404:
{echo '';
break;}
default:
{ ?>
<?php }
break;}
}
else { //
?>visibility:none; display:none;<?php }
?>">
实现这一点的方法有很多种。首先,决不,决不,在属性值中插入一个if
和一个开关
类型的逻辑,就像您在问题中遇到的那样。食谱,遭遇灾难
关于vs问题,本QA实际上描述得非常好:
或多或少,可见性
仍然在文档流中保持它的“空间”,而显示
影响它的流(包括完全删除它)。容易混淆,完全不同的概念
这是一个,和CSS
您在CSS中定义了该属性(如果可以的话,不在style
属性中定义):
/assets/css/site.css
<!-- Other photo stuff, I presume. -->
<div id="PhotoText" class="PhotoTextContent<?php echo $cls; ?>">Your content</div>
docPagePhotoInline.tpl
代码格式化和可读性是许多初级到中级程序员/开发人员所忽视的关键技能。您的格式化方式将非常容易出错,因为或多或少,您无法轻松查看它并找出流程或意图是什么,或者您的确切位置。请检查,至少(和样式建议)。你真的必须注意它才能成功<代码>:)
另外,它的可见性是隐藏的代码>和显示:无
和可见性
和块
做的不是同一件事。仔细看一下,php脚本似乎没有“获取”设置为$page的内容,永久性地缩回到ELSE输出。。。如果设置了$page,则尽管在页面的后面使用了完全相同的“get”代码来包含一个php文件。奇怪。现在修复了以下php问题:。。。现在图层会自动隐藏。一切都很好。
<div id="wrapper">
<div id="novisibility" class="test">
<p>Visiblity<br>Will you see me?<br>Will I still be "there"?</p>
</div>
<div id="nodisplay" class="test">
<p>Block<br>Will you see me?<br>Will I disappear?</p>
</div>
<p id="buttons">
<button type="button" id="visibility">Toggle Visibility</button>
<button type="button" id="display">Toggle Display</button>
</p>
</div>
#wrapper.hide #nodisplay {
display: none;
}
#wrapper.invisible #novisibility {
visibility: hidden;
}
<?php
// ... other stuff
if (isset($_GET['page'])) {
$page = $_GET['page'];
switch($page) {
case "test":
$cls = " NoDisplay";
break;
default:
$cls = " Highlight";
break;
}
}
// ... other stuff
?>
.PhototextContent.NoDisplay {
display: none;
}
.PhototextContent.Highlight {
background: yellow;
display: block;
}
<!-- Other photo stuff, I presume. -->
<div id="PhotoText" class="PhotoTextContent<?php echo $cls; ?>">Your content</div>