2011-02-02 3 views
2

Я использую конвертер dompdf HTML в PDF для динамического создания PDF-файлов на основе определенных переменных. У меня есть сценарий, создающий файл PHP, а затем чтение из этого файла PHP, чтобы запросить загрузку PDF-файла с помощью dompdf.PHP to PDF Pagination

Моя единственная проблема заключается в том, что на выходе не важно, когда она разбивает страницу в PDF. Например, если у меня есть таблица ближе к концу страницы 1, а не перемещение остальной страницы с 1 на страницу 2, она сократит таблицу пополам и поместит половину на страницу 1 и одну половину на страницу 2.

Я хочу, чтобы этого избежать, и чтобы сценарий обрезал страницу PDF, чтобы элементы были кратно выровнены по всему документу.

Есть ли способ сделать это в CSS, PHP или по-другому?

Вот скрипт, который выводит данные в PHP файл:

$filename = 'dompdf/www/test/' . $_GET['rubric'] . '_' . $_GET['student'] . '.php'; 
      $somecontent = " 
<html><head> 
<style type='text/css'> 
html,body { 
    font-family: 'myriad-pro-1','myriad-pro-2',Helvetica, Arial, Sans-Serif; 
    height:100%; 
    width:100%; 
    overflow:auto; 
    margin-left: 20px; 
    margin-right: 20px; 
} 


    P.breakhere {page-break-before: always} 

table 
{ 
    border-color: #000; 
    border-width: 1px; 
    border-style: solid; 
    border-collapse:collapse; 
} 

td 
{ 
    border-color: #000; 
    border-width: 1px 1px 0 0; 
    border-style: solid; 
} 

#header {background:#ffffff url('gradient.png') no-repeat center center; 
height: 100px; 

} 

#text { 
position:relative; 
text-align:center; 
} 

</style> 
</head> 
<body> 


<div id='header'><div id='text'><h3>Upper School<br />"; 

".$rubricname."</h3></div></div> 
Student Name: " . $student . "<br /> 
Division/Grade: " . $grade . "<br /> 
Teacher: " . $tname . "<br /> 
Date: " . $trow['due_date'] . "<br /><br />"; 

Habit 1: " . $1descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
    <td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
     <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 


Habit 2: " . $2descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
    <td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
    <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 

Habit 3: " . $3descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
<td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
     <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 

Habit 4: " . $4descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
    <td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
     <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 

Habit 5: " . $5descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
<td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
     <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 

Habit 6: " . $6descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
    <td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
    <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 

Habit 7: " . $7descrip . " <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>" . $grade_exceeds . "</td> 
    <td width='30'>" . $grade_meets . "</td> 
    <td width='30'>" . $grade_approaches . "</td> 
     <td width='30'>" . $grade_doesnotmeet . "</td> 
     <td>" . $crow['skill'] . "</td> 
</tr> 


<font size='+1'>Comments</font><br /> 

</body></html>"; 


      // Let's make sure the file exists and is writable first. 
      // In our example we're opening $filename in append mode. 
      // The file pointer is at the bottom of the file hence 
      // that's where $somecontent will go when we fwrite() it. 
      if (!$handle = fopen($filename, 'w+')) { 
       echo "Cannot open file ($filename)"; 
       exit; 
      } //if (!$handle = fopen($filename, 'w+')) 
      // Write $somecontent to our opened file. 
      if (fwrite($handle, $somecontent) === false) { 
       echo "Cannot write to file ($filename)"; 
       exit; 
      } //if (fwrite($handle, $somecontent) === false) 
      //echo "Success, wrote ($somecontent) to file ($filename)"; 
      //echo "Success!"; 
      fclose($handle); 

Чистый выход HTML:

<html><head> 
<style type='text/css'> 
html,body { 
    font-family: 'myriad-pro-1','myriad-pro-2',Helvetica, Arial, Sans-Serif; 
    height:100%; 
    width:100%; 
    overflow:auto; 
    margin-left: 20px; 
    margin-right: 20px; 
} 


    P.breakhere {page-break-before: always} 

table 
{ 
    border-color: #000; 
    border-width: 1px; 
    border-style: solid; 
    border-collapse:collapse; 
} 

td 
{ 
    border-color: #000; 
    border-width: 1px 1px 0 0; 
    border-style: solid; 
} 

#header {background:#ffffff url('gradient.png') no-repeat center center; 
height: 100px; 

} 

#text { 
position:relative; 
text-align:center; 
} 

</style> 
</head> 
<body> 


<div id='header'><div id='text'><h3>Upper School<br />Spanish 3<br /> 
Testing Rubric</h3></div></div> 
Student Name: [name]<br /> 
Division/Grade: Senior Institute/Grade 11<br /> 

Teacher: [name]<br /> 
Date: 2/1/2011<br /><br /> 

Habit Name: test22222 <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 

    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 

     <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 
</tr> 


<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 

     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
</tr> 

[name] is approaching standards for the Habit Name. </table><br /> 
Habit Name: tes <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 

    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 

    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
    <td width='30'>&nbsp;</td> 
     <td>Testing 3</td> 
</tr> 
[name] is not meeting standards for the Habit Name. </table><br /> 
Habit Name: test22222 <br /> 

<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 

</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
<td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 4</td> 

</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
<td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 5</td> 

</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
<td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 6</td> 

</tr> 
[name] is meeting standards for the Habit Name. </table><br /> 
Habit Name: test22222 <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 

    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 

     <td width='30'>&nbsp;</td> 
     <td>TESTING 7</td> 
</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 

     <td width='30'>&nbsp;</td> 
     <td>Testing 8</td> 
</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 

     <td width='30'>&nbsp;</td> 
     <td>Testing 9</td> 
</tr> 
[name] is exceeding standards for the Habit Name. </table><br /> 
Habit Name: test22222 <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 

    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 

    <td width='30'>&nbsp;</td> 
<td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 10</td> 
</tr> 

<tr> 

    <td width='30'>&nbsp;</td> 
<td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 11</td> 
</tr> 
[name] is exceeding standards for the Habit Name. </table><br /> 
Habit Name: test22222 <br /> 

<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 
    <td>D</td> 
    <td>Skills and Content</td> 

</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
    <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 

</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 
    <td width='30'>&nbsp;</td> 
     <td>Testing 13</td> 

</tr> 
[name] is exceeding standards for the Habit Name. </table><br /> 

Habit Name: test22222 <br /> 
<table width='100%'> 
<tr> 
    <td>E</td> 
    <td>M</td> 
    <td>A</td> 

    <td>D</td> 
    <td>Skills and Content</td> 
</tr> 

<tr> 
    <td width='30'>&nbsp;</td> 
    <td width='30'><center>X</center></td> 
    <td width='30'>&nbsp;</td> 

     <td width='30'>&nbsp;</td> 
     <td>Testing 14</td> 
</tr> 
[name] is exceeding standards for the Habit Name. </table> 
<P CLASS='breakhere'> 

<font size='+1'>Comments</font><br />This is testing a large comment. 

</body></html> 
+0

Какая версия dompdf? Какой размер бумаги вы используете? Можете ли вы предоставить образец вашего чистого HTML-вывода, который я могу подать на dompdf для тестирования? – thirtydot

+0

Какая причина для преобразования HTML в PDF? (нет, не для одного файла: http://en.wikipedia.org/wiki/MHTML) – reisio

+0

@thirtydot - я обновил исходное сообщение, чтобы включить чистый вывод HTML (второй блок кода) Размер бумаги должно быть 8 1/2 x 11 dompdf версия dompdf_0-6-0_beta1 (я уверен) –

ответ

3

Добавляя это в CSS фиксирует это для меня:

table { 
    page-break-inside: avoid 
} 

<html> 
<head> 
<style type='text/css'> 
html, body { 
    font-family: 'myriad-pro-1', 'myriad-pro-2', Helvetica, Arial, Sans-Serif; 
    margin-left: 20px; 
    margin-right: 20px; 
} 
p.breakhere { 
    page-break-before: always 
} 
table { 
    border-collapse: collapse; 
    page-break-inside: avoid 
} 
td { 
    border: 1px solid #000 
} 
.noBorder { 
    border: 0 
} 
#header { 
    background:#ffffff url('gradient.png') no-repeat center center; 
    height: 100px; 
} 
#text { 
    position:relative; 
    text-align:center; 
} 
</style> 
</head> 
<body> 
<div id='header'> 
    <div id='text'> 
     <h3>Upper School<br /> 
      Spanish 3<br /> 
      Testing Rubric</h3> 
    </div> 
</div> 
Student Name: [name]<br /> 
Division/Grade: Senior Institute/Grade 11<br /> 
Teacher: [name]<br /> 
Date: 2/1/2011<br /> 
<br /> 
<table width='100%'> 
    <tr> 
     <td>E</td> 
     <td>M</td> 
     <td>A</td> 
     <td>D</td> 
     <td>Skills and Content</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td colspan="5" class="noBorder">[name] is approaching standards for the Habit Name.</td> 
    </tr> 
</table> 
<span style="color: #fff">-</span> 

<table width='100%'> 
    <tr> 
     <td>E</td> 
     <td>M</td> 
     <td>A</td> 
     <td>D</td> 
     <td>Skills and Content</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td colspan="5" class="noBorder">[name] is approaching standards for the Habit Name.</td> 
    </tr> 
</table> 
<span style="color: #fff">-</span> 

<table width='100%'> 
    <tr> 
     <td>E</td> 
     <td>M</td> 
     <td>A</td> 
     <td>D</td> 
     <td>Skills and Content</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td colspan="5" class="noBorder">[name] is approaching standards for the Habit Name.</td> 
    </tr> 
</table> 
<span style="color: #fff">-</span> 

<table width='100%'> 
    <tr> 
     <td>E</td> 
     <td>M</td> 
     <td>A</td> 
     <td>D</td> 
     <td>Skills and Content</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
      <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
      <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
      <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td colspan="5" class="noBorder">[name] is approaching standards for the Habit Name.</td> 
    </tr> 
</table> 
<span style="color: #fff">-</span> 

<table width='100%'> 
    <tr> 
     <td>E</td> 
     <td>M</td> 
     <td>A</td> 
     <td>D</td> 
     <td>Skills and Content</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 12</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
     <tr> 
     <td width='30'>&nbsp;</td> 
     <td width='30'><center> 
       X 
      </center></td> 
     <td width='30'>&nbsp;</td> 
     <td width='30'>&nbsp;</td> 
     <td>Testing 2</td> 
    </tr> 
    <tr> 
     <td colspan="5" class="noBorder">[name] is approaching standards for the Habit Name.</td> 
    </tr> 
</table> 
<span style="color: #fff">-</span> 



<font size='+1'>Comments</font><br /> 
This is testing a large comment. 
</body> 
</html> 
+0

Это очень близко к тому, что мне нужно, но проблема также связана с линией текста, которая появляется непосредственно под таблицей: xxx is Стандарты для Этого не может быть на следующей странице, это должно следовать непосредственно после таблицы. Этот текст все еще находится внутри таблицы, поэтому я не уверен, почему он нарушает страницу. Есть идеи? –

+0

Правильно вставьте текст внутри таблицы - на данный момент он не находится внутри '' или' '. – thirtydot

+0

Он находится внутри метки

. Нужно ли быть в TD или TR? –