1

問題は。margin-left: 20%; を挿入したい ユーザーがログインすると、メインコンテンツに。

いいえ、構文に問題はありません。jsで実行できますが、phpを使用するように言われました。そのため、css と本体にクラスも追加しました。

<?php
if ($_SESSION['username']){


include("/view/leftmenu.php");

}
?>

PHPでCSSを有効にするにはどうすればよいですか?

4

3 に答える 3

1

JavaScript を二重引用符で囲み、単一引用符を中に入れます。include最初に実行することもできます。include必要ありません()。コードは次のようになります。

<?php
session_start(); // has to be run before any headers are sent
if(isset($_SESSION['username'])){
  include '/view/leftmenu.php';
  echo "<script type='text/javascript'>$('#maincontent').css('margin-left', '20%');</script>";
}
?>

ただし、より良い解決策は次のようになります。

<?php
session_start(); $marginLeft = '0'; // $marginLeft should be your default
if(isset($_SESSION['username'])){
  $marginLeft = '20%';
  include '/view/leftmenu.php';
}
echo "<!DOCTYPE html><html><head><style type='text/css'>".
"#maincontent{margin-left:$marginLeft;}</style></head><body>".
"<div id='maincontent'>content</div></body></html>";
?>

さらに良いアプローチは、次のようになります。

<?php
session_start(); $className = 'withoutMargin'; // $marginLeft should be your default
if(isset($_SESSION['username'])){
  $className = 'withMargin';
  include '/view/leftmenu.php';
}
?>
<!DOCTYPE html>
<html>
  <head>
    <style type='text/css'>
      .withoutMargin{
         margin-left:0;
       }
       .withMargin{
         margin-left:20%;
       }
    </style>
  </head>
<body>
<?php echo "  <div class='$className'>"; ?>
  <!-- your content here -->
  </div>
</body>
</html>

注: 上記のコードは、このようにする必要はありません。これは単に概念を示しています。送信を設定するためのコードテストがさらに必要になります。また、私がお勧めする 2 番目の例では、外部 CSS を使用するので、ユーザーのブラウザによってキャッシュされます。

于 2013-11-07T22:09:31.690 に答える
0

20% は引用符で囲む必要があります。

$('#maincontent').css('margin-left', '20%');

これは、px、em、pt、およびその他の形式の CSS 測定単位にも適用されます。

于 2013-11-07T22:08:55.873 に答える