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

html-css031

使用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>

两种对齐的效果看下图:

你的css 样式里 肯定有冲突的定义,比如:<div class="c1"><div class="c2">测试</div></div>

如果你在 c1里写了 text-align:center,而在 c2里写了 text-align:left,这样的话,c1里对text-align的设置是不起作用的,只有c2里的才起作用,如果你的浏览器是 i8以上,你可以在预览的时候,按f12,查看网页源代码 然后在源文件 修改样式看效果!