0

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

这是我想要的图像:

在此处输入图像描述

我希望它仅支持-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>

感谢帮助

4

2 回答 2

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

于 2013-04-30T07:02:32.567 回答
0

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

见最后的小提琴链接。这种布局最好使用 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/

于 2014-04-01T10:14:19.940 回答