CSS 样式 if/else 语句没有响应
我试图根据我将显示的变量的值设置 li 元素的位置。由于某种原因,这似乎不起作用。有人看到我的代码有什么问题吗?谢谢
echo "<li class=\"compensation_post posts_values\" if($compensation == \"Free\") {style=\"left: 540px;\"}>$compensation</li>";
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
PHP 可以解析双引号字符串中的变量,但不能解析条件。因此,您需要通过以下两种方式之一来解决这个问题:
分离:
或内联:
我想您也可以进出 php 代码,例如:
PHP can parse variables in a double-quoted string, but not conditions. So you're going to need to break this out in one of two ways:
Separated:
Or in-line:
I suppose you can also go in and out of php code like:
您不能使用这样的 if 语句。相反,您可以使用简写 if。像这样的东西应该有效:
echo "
";
或者,您可以这样做:
if ($compensation == 'Free')
$style = 'style="左:540px;"';
echo "
";
You cannot use an if statement like that. Instead, you could use a shorthand if. Something like this should work:
echo "<li class=\"compensation_post posts_values\"" . (($compensation == 'Free') ? 'style=\"left: 540px;\" : '') . ">$compensation</li>";
Or, you could do like this:
if ($compensation == 'Free')
$style = 'style="left: 540px;"';
echo "<li class=\"compensation_post posts_values\" $style>$compensation</li>";