隐藏一个DIV使用PHP(Hiding a Div using php)

2019-09-20 23:46发布

我目前藏身基于if语句一个div。 我使用的方法是,采用echocss的样式display: none

下面是我特别做的:

<style>
  #content{
    <?php
      if(condition){
          echo 'display:none';
      }
    ?>
  }
</style>
<body>
    <div id="content">
       Foo bar
    </div>
</body>

我的问题的存在,这是一个隐藏的div的好方法? 有没有可能是浏览器缓存的风格,因此忽略了echo -ed出来css样式?

Answer 1:

使用PHP在你的CSS(层叠样式表)是不是“正确”的,

此外,您可以在HTML使用PHP:

<body>
    <?php if (condition){ ?>
        <div id="content">
           Foo bar
        </div>
    <?php } ?>
</body>

有了这个代码,DIV块不出现,(你不使用JavaScript使用它),你可以用这个只是被隐藏了您的div:

 <body>
    <div id="content" <?php if (condition){ echo 'style="display:none;"'; } ?>>
       Foo bar
    </div>
</body>


Answer 2:

为什么不创建一个类:

<style>
    .hidden {
        display: none;
    }
</style>

并且比PHP应用它:

<div id="content" <?php print ( condition ? 'class="hidden"' : '' ); ?> >


Answer 3:

那会不会是隐藏一个div的最佳途径。 由于PHP解析服务器端,你可能也有if语句包含或排除DIV,而不是附和CSS类。 这将是一个CSS类有用的唯一情况是,如果你打算使用JavaScript来显示页面上的DIV后来,当用户在网页上。



Answer 4:

你可以:

<div runat="server" id="theDiv"> 

Code behind is
{
theDiv.Visible = False;
}

要么

大多数人会使用JavaScript

下面有一个前一个线程,这将帮助你:

如果Java脚本else语句隐藏和显示DIV



Answer 5:

是的,这是隐藏div的标准方式。 关于浏览器缓存,因为它不是在外部样式表它不应该缓存此。



Answer 6:

我一般尽量避免使用CSS的PHP内的条件语句; 特别是内联CSS(CSS即在同一页上)。

我会保持你的CSS在自己的CSS文件,并使用PHP条件以添加一个“隐藏”类的DIV - 或 - 不是呼应了DIV的。

<link rel="stylesheet" type="text/css" href="style.css" />
<body>
    <div id="content" <?php if(conditional) : ?>class="hide"<?php endif;?>>
       Foo bar
    </div>
</body>

或可替代

<?php $class = (conditional) ? "hide" : ""; ?>

<link rel="stylesheet" type="text/css" href="style.css" />
<body>

    <div id="content" class="<?=$class?>">
       Foo bar
    </div>
</body>

要么

<link rel="stylesheet" type="text/css" href="style.css" />
<body>

    <?php if (conditional) : ?>
    <div id="content">
       Foo bar
    </div>
    <?php endif; ?>
</body>

多次在div需要被输出,因此可以使用JavaScript(例如转盘,滑块等)重新显示



文章来源: Hiding a Div using php