使用CSS样式...将多行文字右端对齐;例如:第一行文字:哥哥 第二行文字:你哥哥

html-css025

使用CSS样式...将多行文字右端对齐;例如:第一行文字:哥哥 第二行文字:你哥哥,第1张

纯css没法实现,除非你的元素宽度完全写死,那样的话会有很多问题,还是用js来实现吧,我写的这个需要引入jquery

<div id="main">

    <p class="tocenterRight">哥哥</p>

    <p class="tocenterRight">你哥哥</p>

    <p class="tocenterRight">你的大哥哥</p>

</div>

<script src="jquery-3.2.1.min.js" type="application/javascript"></script>

<script>

    $(document).ready(function(){

        //传入type参数center-right 或者left-right 可以传入以后看下效果,第二个参数是要做对其的类名,自己测试一下。

        textAlign("center-right",".tocenterRight")

    })

    var textAlign = function(type,classname){

        var o = $(classname)

        var maxwidth = 0

        switch (type){

            case "center-right" :

                $(o).css("text-align","right")

                if(o.length>0){

                    $(o).css("width",parseInt($($(o).parent()).width()/2))

                }else{

                    console.log("找不到任何对象!")

                }

                break

            case "left-right" :

                $(o).css("text-align","right")

                if(o.length>0){

                    for(var i=0i<o.lengthi++){

                        $(o[i]).css("display","inline")

                        maxwidth = parseInt($(o[i]).css("width"))>maxwidth ? parseInt($(o[i]).css("width")) : maxwidth

                    }

                    $(o).css("display","block")

                    $(o).css("width",maxwidth)

                }else{

                    console.log("找不到任何对象!")

                }

                break

            default :

                break

        }

    }

</script>

两种对齐的效果看下图:

字符串s的长度是8,所以循环8次。

而s中的'1','2','3','4'都是字符与数字1,2,3是不相等的(因为'1'表示数字1的ASCII码等于49,而'2'等于50....),所以从default进入,而default和所有case都没有break,所以都会执行,所以都是8。

<script language="javascript">

function diff(x){

ie4=(document.all)?true:false

if (ie4){

block=x.style

}

var a=screen.width

switch (a){

case 1024:

block.left=""+(parseInt(block.left)+112)

break

case 1152:

block.left=""+(parseInt(block.left)+176)

break

case 1280:

block.left=""+(parseInt(block.left)+240)

break

}}

</script>

<div id="mooon" style="position:relativewidth:350pxheight:14pxz-index:1background-color: #cccccclayer-background-color: #6699ccborder: 1px none #000000left:150pxtop:385px">

层的内容 </div>

<script>diff(mooon)</script>

注意:上面这种方法能实现层的固定,但有一个问题是要固定的这个层会独占用高度,以下的方法可以解决:

<div id="Layer1" style="position:absolutewidth:49pxheight:14px">

<div id="mooon" style="position:absolutewidth:645pxheight:43pxz-index:1layer-background-color: #6699ccborder: 0px none #000000left:330pxtop:380px">内容

</div>

</div>

这些代码可以让层固定显示