dompdf 未在 laravel 中从 html 渲染表格

Mis*_*mad 0 dompdf laravel

我在 Laravel 项目中使用 dompdf。我正在尝试生成一个包含表格的 PDF。表格的所有数据正在生成,但表格边框未显示。

但是当我在浏览器中生成 html 时,它可以在表格的 100% 宽度下正常工作,但在 PDF 中却无法获得 100% 宽度。

我的控制器代码:

    $users  = $course->users()
                        ->withPivot('section_id')
                        ->wherePivot('section_id', '=', $section->id)
                        ->orderBy('student_id', 'asc')
                        ->get();

    $season = Season::where('is_ended', 0)->first();

    $pdf = PDF::loadView('sections.attendace', compact('users', 'course', 'season', 'section'));

    return $pdf->stream('attendance.pdf');
Run Code Online (Sandbox Code Playgroud)

刀片代码:

        <div class="attendance-table">

            <table class="table-bordered">

                <tr>
                    <th class="attendance-cell">ID</th>
                    <th class="attendance-cell">Name</th>
                    @for($i = 1; $i<=9; $i++)
                        <th class="blank-cell attendance-cell">{{$i}}</th>
                    @endfor
                </tr>

                @foreach($users as $user)
                    <tr>
                        <td class="attendance-cell">{{$user->student_id}}</td>
                        <td class="attendance-cell">{{ucwords($user->name)}}</td>
                        @for($i = 1; $i<=9; $i++)
                            <td class="blank-cell attendance-cell">{{$i}}</td>
                        @endfor
                    </tr>
                @endforeach

            </table>

        </div>
Run Code Online (Sandbox Code Playgroud)

CSS

.attendance-table table{
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #000;
}

.blank-cell{

  min-width: 50px;


}

.attendance-cell{

  padding: 8px;


}

.attendance-table table th.attendance-cell, .attendance-table table td.attendance-cell {
    border: 1px solid #000;
}
Run Code Online (Sandbox Code Playgroud)

生成的 PDF

生成的 PDF

生成的 HTML

生成的 HTML

现在,我怎样才能获得边框以及如何获得表格的 100% 宽度?

小智 5

我也遇到了同样的问题,所以我将 CSS 放在刀片本身的标签中<style>

DOMPDF 不会从.css文件中提取。

希望这可以帮助!