0

これが可能かどうかはわかりませんが、if / elseステートメントに応じてページの背景色を設定できるかどうか知りたいですか?

私が欲しいのは、ifステートメントが満たされている場合、ボディの背景色を白にし、elseステートメントがdivを含む場所で満たされている場合、ボディの背景色を灰色にしたいということです。

これはできますか?

      <?php

if (page()){

//all the code in the page

}else{
?>

<div class="boxed">


</div>

<?php   

}

?>

アップデート:

<?php

        if (page()){
?>

    <body class="bodypage <?php echo page()? "color1":"color2" ?>" >

    </body>

<?php

    }else{

    <div class="boxed">
    <a href="<?php echo $pages[$currentPages+1] ?>">Continue with Current Assessment</a>
    </div>

    }

?>
4

6 に答える 6

1

はい、できます。必要な背景色を持つ事前定義されたクラスを使用するのはどうですか。

.color1 {
   background-color:red;
}
.color2 {
   background-color:yellow;
}

<body class="boxed <?php echo page()? "color1":"color2" ?>" >

</body>

アップデート:

<body class="bodypage <?php echo page()? "color1":"color2" ?>" >
<?php if (page()){?>
... all the page code
<?php else {?>
<div class="boxed">
   <a href="<?php echo $pages[$currentPages+1] ?>">Continue with Current Assessment</a>
</div>
?>
于 2013-01-04T23:22:39.723 に答える
0

これを行うための無数の方法。

PHP:

$bodyClass = $condition ? 'foo' : 'bar';
...
echo <<< END_HTML
    <body class="$bodyClass">
       <!-- stuff here -->
    </body>
END_HTML;

CSS:

body.foo { background-color:#fff; }
body.bar { background-color:#888; }

..それを行う1つの方法です。

乾杯

于 2013-01-04T23:22:38.923 に答える
0

これを試して

<body <?php if(true) {echo('style="background:red"'); } else { echo('style="background:white"'); } ?> >

</body>
于 2013-01-04T23:22:50.243 に答える
0

javascriptとjQueryを使用してこのように行うことができます。

<script>
$(document).ready(function(condition){
  if (cond) {
    $(body).css("background-color","red");
  } else {
    $(body).css("background-color","blue");
  }
});
</script>

または、phpでは、いくつかの変更を加えて、そのコードをエコーすることができます。

于 2013-01-04T23:25:29.020 に答える
0

デザインへのphpの影響を最小限に抑えるようにしてください。(設計用のCSS、セマンティクス用のhtml、構造用のphp、相互作用用のjavascript)

これを実現するには、値を含む非表示の入力をブラウザに送信することをお勧めします。

if(statement) {
  $color = '#ffffff';
} else {
  $color = '#ff0000';
}

echo '<input id="pageColor" type="hidden" value="'.$color.'" />';

次に、(たとえば)jqueryを使用して次の操作を行います。

$(document).ready(function() {
  //change bg color based on input value
  $('body').css('background-color', $('#pageColor').val());
});
于 2013-01-04T23:27:45.500 に答える
0

うん、あなたはこれを行うことができます。

最もエレガントな方法の1つ:

PHPの部分:

<?php
$style = 'background:'; # property
$given = page() ? 'red;' : 'black;'; # Ternary operator
$style .= $given; # Concatenate two strings
?>

HTML部分:

<div class="boxed" style='<?php echo $style; ?>'></div>

また、事前定義されたさまざまなCSSプロパティを使用して特別なCSSクラスを作成できます。

PHPの部分:

<?php
$class = page() ? 'first' : 'second'; # CSS classes defined in your stylesheet.
?>

HTML部分:

<div class="boxed <?php echo $class;?>"></div>

そして、ここに行きます。これは簡単なデモンストレーションです。これをパラメータに置き換えることができます。

于 2013-01-04T23:31:13.063 に答える