CSS3"列数"没有对齐列的顶部(Wordpress,响应)

时间:2014-09-05 18:02:19

标签: html css wordpress css3 column-count

首先,我找到that Question here,但答案不太适合我的情况,这就是为什么我问一个问题,看似相似但不是。如果这在某种程度上有意义:-D

我正在为来自cyberchimps的“响应”-Wordpresstheme创造一个孩子主题。

为此我需要文本在3列中进行整形,但也可以在网站的后端进行编辑。我用CCS管理了这个:

.col-940{
    clear: none;
    -webkit-column-count: 3; /* Chrome, Safari, Opera */
    -webkit-column-gap: 40px;
    -moz-column-count: 3; /* Firefox */
    -moz-column-gap: 40px; 
    column-count: 3;
    column-gap: 40px;
}

p {
    margin: 5px 0px 0px 0px;
}

现在生成问题,第一列比下面的列低5px。我无法弄清楚原因。

如上所述,其他线程中的答案不起作用,因为我也有只使用2列的子站点,这就是为什么我不能使用定义的宽度。 在div之上/之前,文本总是只有另一个div。

文本所在的

(PHP)容器:     

<?php if( have_posts() ) : ?>

    <?php while( have_posts() ) : the_post(); ?>

        <?php responsive_entry_before(); ?>
        <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
            <?php responsive_entry_top(); ?>

            <div class="post-entry">
                <?php the_content( __( 'Read more &#8250;', 'responsive' ) ); ?>
                <?php wp_link_pages( array( 'before' => '<div class="pagination">' . __( 'Pages:', 'responsive' ), 'after' => '</div>' ) ); ?>
            </div>
            <!-- end of .post-entry -->

            <?php responsive_entry_bottom(); ?>
        </div><!-- end of #post-<?php the_ID(); ?> -->

    <?php
    endwhile;

    get_template_part( 'loop-nav' );

else :

    get_template_part( 'loop-no-posts' );

endif;
?>

PHP生成的

(HTML)容器:

<div id="post-25" class="post-25 page type-page status-publish hentry">
    <!--
        <h1 class="entry-title post-title">Kontakt</h1>…
    -->
    <div class="post-entry">
        <p>
            Lorem ipsum dolor sit amet, consetetur sadipscing …
        </p>
    </div>
    <!-- end of .post-entry -->
</div>
<!--end of #post-25 -->

屏幕:

Shot of the Situation

Shot with marked problem

2 个答案:

答案 0 :(得分:5)

您已经应用了5px margin-top,并且在列顶部出现的唯一位置是第一个的开头。您需要删除此margin-top,可能使用

    .post-entry > p:first-child {
      margin: 0;
    }

答案 1 :(得分:-1)

对我来说,我需要列中的每个项目都有一个固定的高度。它也存在垂直对齐问题。我能够通过使项目的行高为项目的所需高度并将项目的内容包装在div中来修复垂直对齐。

ul {
    column-count: 2;
}
ul > li {
    line-height: 30px;
}
ul > li > div {
    height: 30px;
    line-height: 1.2;
}