Firefox和IE边框不能正常工作?

时间:2015-12-02 20:30:34

标签: html css css3

所以我一直试图在没有任何运气的情况下解决这一天,并认为我会转向宇宙的CSS大师。

无论如何,在Chrome中我的页面看起来很好(像往常一样),但Firefox和IE似乎都有调整图像大小的问题。我基本上有两个部分,一个'左边的div'和一个正确的div'和左边的正确填充使它成为整个宽度,减去'右div的宽度。

在里面'左边的div',有一个图像,其大小设置为包含元素的宽度和高度的100%,在Chrome中,可以很好地工作,并且离开中心的图像,看起来不错。 FF和IE根本没有调整它的大小,更糟糕的是,他们不尊重左边的div'所以它看起来更奇怪。

简化的HTML:

    <div>
        <div class="dialog-bg"></div>
        <div id="view-larger-dialog" class="mc_report_dialog dialog-container">
            <div class="details-container staticimage">
                <span id="openPostModal">
                    <span class="modal-body cardDetails">
                        <div class="closeOpenModal">×</div>
                        <div class="cardContent">
                            <div class="cardBody">
                                <div id="card-content" class="card-content-staticimage">
                                    <span class="image">
                                        <img class="annotatable" src="https://s-media-cache-ak0.pinimg.com/originals/5a/28/22/5a282241e64e41d605384bb261ea581f.jpg">
                                    </span>
                                </div>
                            </div>
                        </div>
                    </span>
                </span>
                <span class="detailBox">
                    <div class="cardContent cardDetails">
                        <div class="content">
                          <p>
                            blank white space
                          </p>
                        </div>
                    </div>
                </span>
            </div>
        </div>
    </div>

CSS:

.dialog-bg {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: black;
    opacity: 0.6;
    z-index: 1001;
}
.mc_report_dialog .details-container {
    padding: 0px;
}
span#openPostModal {
    position: fixed;
    top: 0;
    left: 0;
    height: 800px;
    margin-top: 0px;
    margin-left: 0px;
    display: table;
    z-index: 5000;
    height: 100%;
    background: none;
    width: 100%;
    box-sizing: border-box;
    padding-right: 24rem;
    border: none;
}
span.detailBox, span.shareNewBox {
    width: 24rem;
    height: 100%;
    padding: 0;
    position: fixed;
    top: 0px;
    right: 0px;
    background-color: white;
    z-index: 5005;
}
span#openPostModal .modal-body {
    border: 0px solid #ffffff;
    padding: .6rem 1rem;
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    max-height: 50%;
    background: none;
    overflow-y: visible;
}
.closeOpenModal {
    font-size: 2rem;
    color: #fff;
    float: right;
    position: absolute;
    right: 1rem;
    top: 1rem;
    font-weight: 700;
    cursor: pointer;
    padding-right: 24rem;
    opacity: 0.8;
}
span#openPostModal .cardContent {
    background: none;
    border: none;
    position: relative;
    width: 90%;
    margin: auto;
}
span#openPostModal .cardContent .cardBody {
    padding: 0;
}
span#openPostModal .cardContent .cardBody #card-content {
    height: 100%;
    padding: 0;
}
#card-content.card-content-staticimage .image {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
}
#card-content.card-content-staticimage .image img {
    max-height: 100%;
    max-width: 100%;
}

您可以看到here on my jsFiddle

的结果

任何帮助都会受到很大的限制。

2 个答案:

答案 0 :(得分:0)

显然整个display: table;display: table-cell都搞砸了。只需更改显示为block的那些即可。对不起,这个问题。

答案 1 :(得分:0)

你的问题不是盒子大小:border-box,它的显示:table。
只需在display:table声明后面添加table-layout:fixed;,你就可以了。