Safari在使用jQuery时忽略页边距

Safari在使用jQuery时忽略页边距,jquery,css,safari,jquery-masonry,percentage,Jquery,Css,Safari,Jquery Masonry,Percentage,我正在使用jquery,但在测试跨浏览器时,safari出现了问题 Chrome和firefox是一样的,但是safari看起来几乎没有利润 因此,我对每一个砖石项目都有2%的利润,这在chrome/firefox上运行良好,但在safari上利润很小 %确实适用于safari,如果我说增加20%的边距,它确实会增加边距,但仅适用于第一个项目/可能是第一个垂直行。在chrome/FF上,左边距适用于每个项目 以下是我目前使用的: #buildcontainer { width: 100%; ma

我正在使用jquery,但在测试跨浏览器时,safari出现了问题

Chrome和firefox是一样的,但是safari看起来几乎没有利润

因此,我对每一个砖石项目都有2%的利润,这在chrome/firefox上运行良好,但在safari上利润很小

%确实适用于safari,如果我说增加20%的边距,它确实会增加边距,但仅适用于第一个项目/可能是第一个垂直行。在chrome/FF上,左边距适用于每个项目

以下是我目前使用的:

#buildcontainer {
width: 100%;
margin-top: 6%;
}

.blogresults { 
width: 22.7%;
border: 0px solid #fff;
background-color: #fff;
margin-left: 2%;
z-index: 500;
disply: inline-block;
float:left;
}
我将左边的边距改为10px,它工作正常,适用于所有浏览器,它只是导致问题的百分比


请注意,buildcontainer是存放砖石项目的地方。

不确定您使用的是哪个版本的Safari,但当我签入旧版本的Safari时,我能够重现该问题。计算每个元素的绝对位置时,不考虑每个元素中1%的边距

这里有一些想法

使用插件的边距选项设置元素之间的水平间距

codepen上的示例链接显示了如何将其添加到现有HTML/脚本中。因为,这将适用于所有浏览器,所以您必须调整或删除CSS中的边距

仅对webkit浏览器应用像素边距

在元素的左侧添加边框 不得已而为之您可以尝试通过添加左边框来模拟空间。只要背景不是图像或渐变,它就会显示为空间

.blogresults { 

   // Margin and initial border property has been removed
    width: 22.7%;
    background-color: #fff;
    z-index: 500;
    display: inline-block;
    float:left;

   // Left border has been added
    border-left: 5px solid #fff; 
}

我希望我可以,但是砖石项目是动态的,要复制所有的布局等,JSFIDLE将是一项相当艰巨的任务。该网站也不是活的,所以不能给出一个例子。我知道这很糟糕。就像预期的那样,只是增加了物品的大小。我会注意到这个问题,然后再回到它1,我认为这更像是jquery砌体的问题,因为如果我重新加载safari,这些项目都是正确的,直到它们适合网格,然后它们就失去了空间。2我的每个项目都有自己的div,是否应该作为列表完成?
.blogresults { 

   // Margin and initial border property has been removed
    width: 22.7%;
    background-color: #fff;
    z-index: 500;
    display: inline-block;
    float:left;

   // Left border has been added
    border-left: 5px solid #fff; 
}