如何在css3 webkit中混合2列?

时间:2013-04-30 04:41:28

标签: html css3 webkit multiple-columns mixed

我正在尝试使用css3中的列来分割内容报。问题是我不能通过 h1 混合2列3列。

这是我想要的图像:

enter image description here

我希望它仅支持 -webkit - 。您还可以将内容更改为< p> < h1>

的组

此处我的代码包含图片中的文字示例:http://jsfiddle.net/mN2cg/

CSS:

body {
    font-family: "Times New Roman", "Helvetica";
    font-size: 16px;
    padding: 20px;
    margin: 0;
    overflow-x: scroll;
}
#columns {
    -moz-column-count: 3;
    -moz-column-gap: 20px;
    -moz-column-fill: auto;
    -webkit-column-count: 3;
    -webkit-column-gap: 20px;
    -webkit-column-fill: auto;
    column-count: 3;
    column-gap: 20px;
    column-fill: auto;
    height: 300px;
}
h1 {
    background: #ff6600;
    margin: 0 0 20px 0;
}
p {
    background: #ccc;
    margin: 0 0 10px 0 !important;
}

HTML:

<body>
    <div id="columns">
        <h1>Dolore ad Corporis Eius Cicero Laudantium sit Minima</h1>
        <p>
            Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do 
            eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
            enim ad minim veniam, quis nostrud exercitation ullamco 
            laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure 
            dolor in reprehenderit in voluptate velit esse cillum dolore eu 
            fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, 
            sunt in culpa qui officia deserunt mollit anim id est laborum.
        </p>
        <p>
            Sed ut perspiciatis unde omnis iste natus error sit voluptatem 
            accusantium doloremque laudantium, totam rem aperiam, eaque 
            ipsa quae ab illo inventore veritatis et quasi architecto beatae 
            vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas 
            sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores 
            eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, 
            qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, 
            sed quia non numquam eius modi tempora incidunt ut labore et dolore 
            magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis 
            nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut 
            aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit 
            qui in ea voluptate velit esse quam nihil molestiae consequatur, 
            vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?
        </p>
        <p>
            At vero eos et accusamus et iusto odio dignissimos ducimus qui 
            blanditiis praesentium voluptatum deleniti atque corrupti quos 
            dolores et quas molestias excepturi sint occaecati cupiditate 
            non provident, similique sunt in culpa qui officia deserunt 
            mollitia animi, id est laborum et dolorum fuga. Et harum 
            quidem rerum facilis est et expedita distinctio. Nam libero 
            tempore, cum soluta nobis est eligendi optio cumque nihil impedit 
            quo minus id quod maxime placeat facere possimus, omnis voluptas 
            assumenda est, omnis dolor repellendus. Temporibus autem quibusdam 
            et aut officiis debitis aut rerum necessitatibus saepe eveniet ut 
            et voluptates repudiandae sint et molestiae non recusandae. 
            Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis 
            voluptatibus maiores alias consequatur aut perferendis doloribus 
            asperiores repellat.
        </p>
        <p>
            Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do 
            eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut 
            enim ad minim veniam, quis nostrud exercitation ullamco 
            laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure 
            dolor in reprehenderit in voluptate velit esse cillum dolore eu 
            fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, 
            sunt in culpa qui officia deserunt mollit anim id est laborum.
        </p>
    </div>
</body>

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

可能这可以帮到你

h1 {
    background: #ff6600;
    margin: 0 0 20px 0;
    column-span:all;
    -webkit-column-span:all;
}

http://www.w3schools.com/cssref/css3_pr_column-span.asp

答案 1 :(得分:0)

问题是你在包含标题和所有段落的div上使用column属性,加上右边的两个是垂直堆叠的。所以基本上不可能只使用para列获得所需的布局。

最后看到小提琴链接。最好将div用于这种布局。最起码,我是这么想的。这是重写的html结构和css

<body>

<div class="left-column" >
    <h1>Cicero Laudantium sit Minima</h1>
    <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?  </p>

        <p style="margin-right:-5%;;">Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?  </p>


</div>
<div class="right-column" >
    <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?  </p>    

   <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?  </p>     

</div>

和这样的CSS。

body {
font-family: "Times New Roman", "Helvetica";
font-size: 16px;
padding: 20px;
margin: 0;
overflow-x: scroll;
   }

.left-column{ float:left; width:60%;}
.left-column h1 {background: #ff6600;
               margin: 10px 10px 10px 0; padding:20px 10px;  ;}

.left-column p {float:left; width:46%;
margin:5% 5% 5% 0;
background: #ccc;}

.right-column{float: left; width:40%;}
.right-column P {width:90%; margin:10px 5% 10% 5%;
background: #ccc;}

http://jsfiddle.net/mN2cg/2/