Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html Safari不接受媒体查询:显示:要显示的表格单元格:块_Html_Css_Html Table_Media Queries_Responsive - Fatal编程技术网

Html Safari不接受媒体查询:显示:要显示的表格单元格:块

Html Safari不接受媒体查询:显示:要显示的表格单元格:块,html,css,html-table,media-queries,responsive,Html,Css,Html Table,Media Queries,Responsive,我的问题完全在于Safari版本9.1.2(11601.7.7)的问题 其他浏览器和设备我没有遇到问题 出于响应目的,我喜欢将所有表格元素从水平布局转换为垂直布局,并使用“数据标签”属性在视口收缩时表格重建时保留表格行与表行之间的标题标签 对于所有表,我将设置一个全局css规则:表布局:固定 HTML: <table width="100%" class="table"> <thead> <tr> &

我的问题完全在于Safari版本9.1.2(11601.7.7)的问题 其他浏览器和设备我没有遇到问题

出于响应目的,我喜欢将所有表格元素从水平布局转换为垂直布局,并使用“数据标签”属性在视口收缩时表格重建时保留表格行与表行之间的标题标签

对于所有表,我将设置一个全局css规则:表布局:固定

HTML:

<table width="100%" class="table">
     <thead>
          <tr>
               <th>Name</th>
               <th>Date</th>
               <th>Place</th>
          </tr>
     </thead>
     <tbody>
          <tr>
               <td data-label="Name">John Doe</td>
               <td data-label="Date">12/31/2018</td>
               <td data-label="Place">Milwaukee, WI</td>
          </tr>
          <tr>
               <td data-label="Name">Jane Smith</td>
               <td data-label="Date">10/17/2018</td>
               <td data-label="Place">Chicago, IL</td>
          </tr>
          <tr>
               <td data-label="Name">Bob Jones</td>
               <td data-label="Date">11/03/2018</td>
               <td data-label="Place">Cleveland, OH</td>
          </tr>
     </tbody>
</table>
.table, table {
     table-layout: fixed;
}

@media screen and (max-width:991px){
     .table thead {
          display: none;
     }

     .table td {
          display: block;
          width: 100%;
          padding: 5px 5px 5px 120px;
          position: relative;
     }

     .table td:before {
          content: attr(data-label);
          position: absolute;
          top: 0;
          left: 0;
          padding: 5px;
          text-align: right;
     }
}
在大多数情况下,这适用于我见过的每一款浏览器,但现在我遇到了一个严重的问题,Safari没有意识到这一点。即使我进入Safari的开发者工具并手动强制从表单元格到块显示td,也没有任何变化,而且当我从样式-规则切换到计算样式时,它仍然显示为display:table cell


一、 就我个人而言,我无法理解为什么Safari不允许更改显示,即使我是手动操作。

也有同样的问题。确保HTML文件的第一行有以下doctype声明:

<!DOCTYPE html>

它将文档类型设置为HTML5
text/html
模式。我猜Safari默认使用不同的doctype;或者尝试猜测doctype,在某些情况下出错

如果您感兴趣,请参阅以下内容以深入了解doctype:


那是个打字错误。该问题已更正。如果更改表本身的
显示值会发生什么情况。@Paulie\u D什么也没有发生