kasperhj
kasperhj

Reputation: 10482

Aligning paragraphs and sub-paragraphs horizontally

Is there a way to present data as follows using css?Example

An article is divided into paragraphs, and each paragraph has a (usually smaller) box/sub-paragraph to the right of it, horizontally aligned with its respective paragraph.

Upvotes: 0

Views: 3598

Answers (2)

Malcolm
Malcolm

Reputation: 784

Using some CSS you could do something like the following. Example

CSS

.wrapper {
    width: 500px;
    overflow: hidden;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: 30px;
    margin-left: auto;
}
.wrapper .paragraph {
    width: 225px;
    float: left;
    height: 150px;
    line-height: 150px;
    border: medium solid #000;
    text-align: center;
    vertical-align: middle;
}
.wrapper .text {
    float: right;
    width: 225px;
    height: 100px;
    line-height: 100px;
    border: medium solid #000;
    text-align: center;
    vertical-align: middle;
}

HTML

<div class="wrapper">
  <div class="paragraph">Paragraph</div>
  <div class="text">Related Text</div>
</div>
<div class="wrapper">
  <div class="paragraph">Paragraph</div>
  <div class="text">Related Text</div>
</div>

Upvotes: 1

Krasimir
Krasimir

Reputation: 13549

Yes, it is possible. Here is an example of how you can achieve this http://jsfiddle.net/sptzH/1/ HTML:

<section class="content">
    <article class="row">
        <p>Paragraph A</p>
        <div class="teaser">
            Text related to A Text related to A Text related to A Text related to A Text related to A Text related to A 
        </div>
    </article>
    <article class="row">
        <p>Paragraph B Paragraph B Paragraph B Paragraph B</p>
        <div class="teaser">
            Text related to B
        </div>
    </article>
</section>

CSS:

.content {
    width: 500px;
}
.row {
    clear: both;
    padding: 10px;
    border-top: solid 1px #000;
}
.row:after {
    content: "";
    display: table;
    clear: both;
}
.row p {
    width: 60%;
    float: left;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: 0;
    margin: 0;
    font-size: 50px;
}
.row .teaser {
    width: 40%;
    float: left;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    padding: 6px;
    border: dotted 1px #999;
}

Upvotes: 2

Related Questions