【问题标题】:php detect browser widthphp检测浏览器宽度
【发布时间】:2016-04-29 11:44:31
【问题描述】:

我有一个 CSS 媒体查询,可以调整 div 的大小和位置。在我的 html 中,div 有 2 行,但在较小的屏幕上,我希望它显示为 1 行。

有没有办法确保我有:

Website Visitors: <?php echo $data; ?>
<div class="fb-like"></div>

代替:

Website Visitors: <?php echo $data; ?>
<br/>
<div class="fb-like"></div>

当屏幕小于固定数量(本例中为 460 像素)时?

我想使用 php 或 css,因为它们是我在 css.php 文件中用于样式的。

【问题讨论】:

  • 您已经回答了您的问题,请使用媒体查询。删除br 并使用边距。
  • 请不要使用 php 作为样式元素。
  • 我想结合css使用一些东西(我从来没有说过它必须是php)。 css 边距在理论上听起来不错,但它们不适用于我正在整理的网站。 (主要是因为我为 4 个网站使用相同的 css 文件)
  • 我使用 php 来设置元素的样式,就像我使用 php 来自动化部分 html 一样。我使用了很多基于我​​已经拥有的变量的 foreach 语句。另外,通过在我的 css 开始时将颜色设置为变量,我可以通过更改一行 php.ini 来更改十个元素的颜色。我不明白为什么我不应该使用 php 来设置样式。
  • 对于 css 中的变量,不必使用 php。看看 SASS/SCSS 或 LESS。您可以节省不必要的流量。

标签: php html css screen-size


【解决方案1】:

删除&lt;br/&gt; 在你的css中添加这个(值可以是你想要的任何东西):

.fb-like {
    margin-top: 10px;
}

在您的媒体查询中:

.fb-like {
    margin-top: 0px;
}

【讨论】:

    【解决方案2】:

    使用完整的 PHP 是不可能的,您可能还需要使用 Javascript! 您可以尝试以下代码来获取屏幕宽度和高度!!!

    <?php
    session_start();
    if(isset($_SESSION['screen_width']) AND isset($_SESSION['screen_height'])){
        echo 'Screen resolution: ' . $_SESSION['screen_width'] . 'x' . $_SESSION['screen_height'];
    } else if(isset($_REQUEST['width']) AND isset($_REQUEST['height'])) {
        $_SESSION['screen_width'] = $_REQUEST['width'];
        $_SESSION['screen_height'] = $_REQUEST['height'];
        header('Location: ' . $_SERVER['PHP_SELF']);
    } else {
        echo '<script type="text/javascript">window.location = "' . $_SERVER['PHP_SELF'] . '?width="+screen.width+"&height="+screen.height;</script>';
    }
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-03
      • 1970-01-01
      • 1970-01-01
      • 2011-04-18
      • 2011-01-11
      • 2018-05-07
      • 2013-01-31
      • 2014-12-28
      相关资源
      最近更新 更多