就此而言,我可以在较窄的div中放置任何宽的div吗?我可以通过查看this页面来解释我想要做的事情
我正在尝试做的是使用1300px宽的SVG图形 - 其id为“wide2” - 与称为“center”的div重叠。问题在于,当我将wide2放入中心时,它会向左对齐。 div的两个类都有margin-left:auto和margin-right:自动CSS属性,它们起作用,假设“center”中包含的div比“center”窄。
到目前为止我的解决方案是关闭“中心”,然后立即打开“wide2”,然后,在关闭那个之后立即重新打开“中心”。这不是一个很好的系统,特别是考虑到SVG的形状。
任何人都可以帮助我吗?
(根据请求)有问题的类的CSS。
div.center { display: block; margin-left: auto; margin-right: auto; margin-top: 0; margin-bottom: 0; padding-bottom: 0; padding-top: 0; height: 100%; width: 1000px; background: #bebebe; /* Old browsers / background: -moz-linear-gradient(left, #bebebe 0%, #ffffff 12%, #ffffff 88%, #bebebe 100%); / FF3.6+ / background: -webkit-gradient(linear, left top, right top, color-stop(0%,#bebebe), color-stop(12%,#ffffff), color-stop(88%,#ffffff), color-stop(100%,#bebebe)); / Chrome,Safari4+ / background: -webkit-linear-gradient(left, #bebebe 0%,#ffffff 12%,#ffffff 88%,#bebebe 100%); / Chrome10+,Safari5.1+ / background: -o-linear-gradient(left, #bebebe 0%,#ffffff 12%,#ffffff 88%,#bebebe 100%); / Opera 11.10+ / background: -ms-linear-gradient(left, #bebebe 0%,#ffffff 12%,#ffffff 88%,#bebebe 100%); / IE10+ / background: linear-gradient(left, #bebebe 0%,#ffffff 12%,#ffffff 88%,#bebebe 100%); / W3C / filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bebebe', endColorstr='#bebebe',GradientType=1 ); / IE6-9 */ border-bottom: 0; border-top: 0; margin-top: 0; margin-bottom: 0; padding-bottom: 0; padding-top: 0; }
div.wide2 { display: block; margin-left: auto; margin-right: auto; margin-top: 0; margin-bottom: 0; padding-bottom: 0; padding-top: 0; height: 180; width: 1300px; border-bottom: 0; border-top: 0; margin-top: 0; margin-bottom: 0; padding-bottom: 0; padding-top: 0; }
答案 0 :(得分:0)
问题非常不明确。我认为你想要
您可以使用ScrollLeft DOM属性执行滚动。例如:
<div style="background-color:#093; width:200px; overflow:scroll" id="sc1">
<div style="background-color:#033; width:400px;">
</div>
</div>
<script type="text/javascript">
document.getElementById("sc1").scrollLeft="30";
</script>
答案 1 :(得分:0)
这是一个CSS解决方案。
将以下行添加到.wide2
css类:
margin-left: 50%;
transform: translate(-50%);
发生的事情是你首先将较宽的div移动到较窄div的中心,然后translate
将内部div移开。
您可以在此处看到它:https://jsfiddle.net/89f31era/