html&css中的文字对齐问题_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 11:22:04
原创
1725人浏览过

html&css的使用过程中,我们经常会遇到很多文字对齐问题。下面我要介绍一个有丁点难的文字对齐问题。

实现效果如下图所示。

 

两行长度不定的文字,要让它们总体水平居中,然后,这两行字要左对齐,如下图所示。

听起来好像挺简单,然而实现起来却。。。。。。

 

错误做法一:

用一个大块div包住两个div,在大div中设置"text-align:center; ",在小div中设置"text-align:left; "

结果如下图所示。

因为div会占据一整行,而不能随内容大小自动调节宽度,如果要对大div设置width,这也不好控制,因为万一文段长度改变,那么还是无法实现居中。

 

错误做法二:

于是我把小div改成span,因为span是行内元素,能随span内的文段宽度来调节自身宽度。结果如下图所示。

因为span自动调节自身宽度(即span宽度等于文段长度),所以"text-align:left; "对它不起作用。

 

正确做法:

既然块级元素和行内元素都无法实现该效果,那能否折中采取介于它们之间的元素。

对,就是设置"display:inline-block;"。

效果图如下:

思路:在一个大div中放置一个小div,小div中包含2个span文段。大div设置"text-align:center; ",让小div居中; 小div设置"display:inline-block;",这样小div就能有行内元素的特性,会根据内容自动调节自己的宽度,再设置"text-align:left; ",让其中的元素左对齐,这样就搞定了。

Tip:小div中的span元素可替换为div等块级元素,小div可替换为span等行内元素。

 

html代码如下:

<div id="container">    <div id="child-container">        <span class="text">请尽快付款以保证商家能及时提供服务</span><br/>        <span class="text">未支付订单将在半个小时后关闭</span>    </div></div>
登录后复制

 

css代码如下:

 1 *{ 2     margin: 0; 3     padding: 0; 4 } 5 #container { 6     text-align: center; 7     background-color: #DBEDFD;   //这三句只是为了美观,请忽略。。。 8     height: 40px; 9     padding: 15px 0;10 }11 #child-container {12     text-align: left;13     display: inline-block;14 }
登录后复制

 

字狐AI
字狐AI

由GPT-4 驱动的AI全能助手,支持回答复杂问题、撰写邮件、阅读文章、智能搜索

字狐AI 26
查看详情 字狐AI

 

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号