在div的两边包裹文本

时间:2014-05-26 08:47:55

标签: html css css3 text

这是我尝试实现的目标:

使用以下HTML

<div id="my1"> 
<p> some text </p>  
<div id="wrap">Awesome content</div>  
</div>  

有这个:

text text text text text text text text text text text text text text  
text text text text text div id="wrap" text text text text text  
text text text text text text text text text text text text text text  

浮动div到目前为止还没有帮助我达到这个结果......(考虑到my1和wrap的高度和宽度都已知)?

当我希望它从&#34; my1&#34;的左边开始时,文本从包装的div的右侧开始的小提琴。 div,休息&#34;包裹&#34; DIV。 http://jsfiddle.net/matmat/dxV4X/

3 个答案:

答案 0 :(得分:4)

看起来你想要像float:center这样的东西?好吧,问题是这个属性不存在。

以下是两种选择:

1)使用伪元素伪造它 - FIDDLE - 请参阅此css-tricks article

enter image description here

设置标记如下:

<div>
    <div id="wrap">Awesome content</div>
    <div id="l">
        <p>left text here</p>
    </div>
    <div id="r">
        <p>right text here</p>
    </div>
</div>

使用CSS

#wrap {
    width:250px;
    height: 250px;
    background: yellow;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -125px;
}
#l {
    float: left;
}
#r {
    float: right;
}
#l, #r {
    width: 49%;
}
#l:before, #r:before {
    content:"";
    width: 125px;
    height: 250px;
}
#l:before {
    float: right;
}
#r:before {
    float: left;
}

备选方案#2(仅限IE 10+):CSS Exclusions - FIDDLE

enter image description here

标记

<div class="container">
    <div class="exclusion">Awesome content which floats in the center</div>
    <div class="dummy_text">all the text here</div>
</div>

CSS

.container {
    font-size: small;
    background: aqua;
    position: relative;
}
.exclusion {
    background-color: lime;
    -ms-wrap-flow: both;
    -ms-wrap-margin: 10px;
    z-index: 1;
    position:absolute;
    left:0;right:0;
    top:0;bottom:0;
    width: 150px;
    height: 100px;
    background: yellow;
    margin: auto;
}

有关CSS排除浏览器支持和更多资源的详细信息,请参阅我的回答here

答案 1 :(得分:0)

<div id="my1">
    <p>some text some text
       <span id="wrap">wrapped text</span>
       some text some text</p>
</div>

如果我正确地阅读问题,该应该有效吗? <div&gt;是一个破坏的块级元素,<span>就像你想要的那样内联。

在这里小提琴:http://jsfiddle.net/YbuuH/2/

答案 2 :(得分:0)

使用css如下:

  

wrap {word-wrap:break-word; }

这个css应该可以将文本换行并继续下一行。