在 Symfony 4 之内(我不知道早期版本中是否存在此问题)。我有一个非常奇怪和烦人的问题。我想加载背景图片(稍后将其更改为引导轮播)。但是现在,当我使用带有路线(注解)的同一背景上的注册表格时,这非常令人恼火。 像/ edit,/ register,/ login等。 看起来背景图片显示了两次!因此,当您切换到登录屏幕时。翻页时,背面的背景图像闪烁!
我该如何解决?
我禁用了树枝缓存。但这似乎不起作用
cache: false
这是我的Symfony 4控制器代码:
/**
* @Route("/bg_image")
*/
public function bg_image()
{
return $this->render('base.html.twig', ['text' => 'next']);
}
/**
* @Route("/bg_image/next_page")
*/
public function next_page()
{
return $this->render('base.html.twig', ['text' => 'next']);
}
/**
* @Route("/bg_image/prev_page")
*/
public function prev_page()
{
return $this->render('base.html.twig', ['text' => 'prev']);
}
这是我的Symfony 4树枝模板“ base.html.twig”:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>{% block title %}Welcome!{% endblock %}</title>
{% block stylesheets %}
<link rel="stylesheet" href="/custom.css">
{% endblock %}
</head>
<body>
<img src="/images/slide.jpg" alt="Smiley face" height="200">
<h1 class="top-left">{{ text }}</h1>
<br/><br/>
<a href="/bg_image/next_page">next</a> |
<a href="/bg_image/prev_page">prev</a>
{% block body %}{% endblock %}
{% block javascripts %}{% endblock %}
</body>
</html>
我想要一个平滑的过渡,而不是像上例那样在上一页和下一页之间闪烁。
我猜这是一个Symfony框架问题。当我构建没有Symfony的页面时。没有闪烁发生。
答案 0 :(得分:0)
这不是Symfony的问题。
当您单击“下一个”或“上一个”时,背景图像有时看起来像消失了,然后重新出现,这是因为您正在请求新页面。当它停止这样做时,是因为您的浏览器已经缓存了该页面,并且加载新页面的速度如此之快,以至于您肉眼看不到更改。
如果要在更改的元素之间进行“平滑过渡”,则需要使用Javascript / CSS来操作元素,而无需请求新页面。