首页 > 解决方案 > 为什么 laravel 将我的侧边栏包装在 em 标签中?

问题描述

**使用 Laravel 5.8.31 和 Bootstrap 4。浏览器:Chrome v. 76.0.3 和 Opera 62.0.33 **

我正在通过删除帖子来测试我的 CRUD 功能。删除后,控制器重定向回我的帖子索引页面。当页面加载时,引导侧栏会向下包裹在其他帖子下方,而不是在右侧。在删除帖子之前很好。

我尝试更改 cols 和浮动元素无济于事。使用 Chrome 开发工具,我看到侧边栏嵌套在代码中没有的 em 标记中。尝试清除应用程序缓存。没有效果。

我怀疑这与刀片模板语言和解析 html 有关,但如果是这样,除了在每个页面上手动安装侧边栏外,我不知道如何解决这个问题。

我该如何解决??

代码可以在这里找到:https ://github.com/gkennedy87/Hillcrest/tree/master/resources/views

(似乎 laravel 也将页脚包装在 em 标签中。虽然目前这不是问题)

// views/posts/index.blade.php
@extends('layouts.app')
      @section('content')
      @include('inc.navbar')

        <div class="container">
          <div class="row">

             <div class="col-md-8 col-lg-8">
               <h1>Our Blog</h1>
               @if (count($posts) > 0)
                 @foreach ($posts as $post)
                   <div class="card mb-4">
                     <img class="card-img-top" src="http://placehold.it/750x300" alt="Card image cap">
                     <div class="card-body">
                       <h2 class="card-title"><a href="/posts/{{$post->id}}">{{$post->title}}</a></h2>
                       <p class="card-text">{!! str_limit($post->body,200,'...')!!}</p>
                       <a href="/posts/{{$post->id}}" class="btn btn-primary">Read More &rarr;</a>
                     </div>
                     <div class="card-footer text-muted">
                       Posted on {{$post->created_at}} by
                       <a href="#">Start Bootstrap</a>
                     </div>
                  </div>
                @endforeach
             {{$posts->links()}}
             @else
             <p>No Posts Found</p>
           @endif
         </div>
       @include('inc.sidebar')

    <!--end row -->
</div>
    <!--end container -->
</div>
@include('inc.footer')
@endsection


// views/inc/sidebar.blade.php

<!--sidebar start -->
    <div class="col-md-4 col-lg-4">
        <div class="sticky">
            <!-- Search Widget -->
            <div class="card my-4">
              <h5 class="card-header">Search</h5>
              <div class="card-body">
                <div class="input-group">
                  <input type="text" class="form-control" placeholder="Search for...">
                  <span class="input-group-btn">
                    <button class="btn btn-secondary" type="button">Go!</button>
                  </span>
                </div>
              </div>
            </div>

            <!-- Categories Widget -->
            <div class="card my-4">
              <h5 class="card-header">Categories</h5>
              <div class="card-body">
                <div class="row">
                  <div class="col-lg-6">
                    <ul class="list-unstyled mb-0">
                      <li>
                        <a href="#">Web Design</a>
                      </li>
                      <li>
                        <a href="#">HTML</a>
                      </li>
                      <li>
                        <a href="#">Freebies</a>
                      </li>
                    </ul>
                  </div>
                  <div class="col-lg-6">
                    <ul class="list-unstyled mb-0">
                      <li>
                        <a href="#">JavaScript</a>
                      </li>
                      <li>
                        <a href="#">CSS</a>
                      </li>
                      <li>
                        <a href="#">Tutorials</a>
                      </li>
                    </ul>
                  </div>
                </div>
              </div>
            </div>

            <!-- Side Widget -->
            <div class="card my-4">
              <h5 class="card-header">Side Widget</h5>
              <div class="card-body">
                You can put anything you want inside of these side widgets. They are easy to use, and feature the new Bootstrap 4 card containers!
              </div>
            </div>

            </div>
            </div>

        <!-- sidebar end -->

标签: phphtmllaravel-5bootstrap-4

解决方案


我在本地环境中设置了应用程序,即使删除了帖子,侧边栏也始终保持在右侧。响应也不包含任何em标签。你可以尝试清除缓存:

php artisan cache:clear
php artisan view:clear
php artisan config:clear

推荐阅读