各地市:
漯河数据分析如何帮助企业进行数据清洗? 许昌网页开发的就业前景和薪资水平如何 濮阳定制化网站去哪儿找? 濮阳域名注册去哪儿找? 鹤壁网站建设费用多少? 漯河定制化网站如何保证网站安全? 许昌网站建设中,如何策划吸引人的文章内容? 濮阳网站维护如何进行学习? 周口电商网站分为哪些类型? 商丘网站建设怎么处理服务器漏洞安全? 开封免费搭建网站如何策划? 漯河数据分析如何策划? 开封logo设计的流程和注意事项有哪些? 周口logo设计怎么设计最好? 濮阳网站建设主页设计有什么要求? 南阳网站SEO中链轮模型如何建立? 济源SEO技术中更换IP后怎么做? 濮阳网站建设Linux服务器怎么配置SSH服务器? 开封域名注册的费用是多少? 济源网站优化SEO中快速排名有哪些应用场景? 安阳网站建设公司哪家专业可靠? 开封域名注册需要多少钱? 开封网站建设怎么定期Linux服务器备份数据? 平顶山响应式设计最新技术发展趋势分析? 洛阳SEO技术如何降低跳出率? 周口网站维护分为哪些类型? 三门峡网站建设Linux服务器怎么限制shell访问权限? 开封免费搭建网站的优势是什么? 濮阳电商网站需要注意什么事项? 济源网络安全有什么技巧? 周口网站建设Linux服务器通过哪些方式隐藏服务器? 洛阳免费搭建网站如何进行学习? 漯河定制化网站需要确认哪些功能? 商丘网站空间购买需要多长时间? 南阳域名注册需要多长时间? 洛阳网站建设导航设计有什么要求? 驻马店网页开发分为哪些类型? 信阳网站维护需要多少钱? 漯河网站优化中搜索引擎怎么操作? 焦作网络安全需要考虑什么因素? 许昌网站建设日常怎么检查服务器网络安全? 新乡seo中网站空间如何进行优化? 新乡免费搭建网站去哪儿找? 新乡网站设计去哪儿找? Linux服务器通过哪些方式发现未授权访问? 南阳网站建设Linux服务器怎么过滤流量? 南阳网站建设Linux服务器怎么记录未授权访问? 三门峡网站建设Linux服务器通过哪些方式拒绝服务攻击? 濮阳网站建设Linux服务器通过哪些方式限制流量? 安阳网站建设怎么处理服务器系统安全? 鹤壁网站建设404页面怎么开发?
您的位置: 主页 > 网站设计观点 > 用CSS就能完美解决文字溢出的处理办法

用CSS就能完美解决文字溢出的处理办法

发布时间:2023-08-04 04:52:34 | 发布者:往流科技

用CSS就能完美解决文字溢出的处理办法
经常会在项目中碰到文字溢出的情况,解决起来也比较麻烦,而最大的麻烦还是在浏览器的兼容问题上。至少到目前为止,我还没找到用CSS就能完美解决文字溢出的办法。前几天就再次碰到这个问题,之后一查,发现和迅雷的一个页面重构的面试题惊奇的相似,仔细一想,也没啥巧合不巧合的,只能说这种情况太常见了。
要求是这样的:一个新闻列表,新闻标题后紧跟着日期,新闻标题的宽度超过一定的宽度就要自动截断,但是日期必须显示完整。
花了点时间研究了下,最终的效果对于浏览器的兼容不是很理想,但我觉得也是很不错了。
查看演示
看到这个要求,基本上就知道HTML的结构该怎么写了,一个有序列表(ol+li):
<ol id="news-list">
<li><a href="#">毛毛猫系列漫画</a><span>2010-09-18</span></li>
<li><a href="#">一个网页设计需求方眼中的网页设计</a><span>2010-09-18</span></li>
<li><a href="#">如何应对骗稿的客户</a><span>2010-09-18</span></li>
<li><a href="#">平面设计师:一个涂有虚名的职业</a><span>2010-09-18</span></li>
<li><a href="#">站在十字路口的网站设计师</a><span>2010-09-18</span></li>
<li><a href="#">设计师请别把自己不当人。</a><span>2010-09-18</span></li>
<li><a href="#">什么样的包装才叫做有新意的包装呢?</a><span>2010-09-18</span></li>
<li><a href="#">寻隐活动寻找网页设计开发高手</a><span>2010-09-18</span></li>
<li><a href="#">求平面设计同行们的经验指引</a><span>2010-09-18</span></li>
</ol>
结构写好了,接下来写CSS样式部分了,在这里先重点介绍一个CSS属性:
text-overflow: ellipsis;
text-overflow就是定义文字溢出的时候,该如何截断文字,属性值是ellipsis的时候就是当对象内文本溢出的时候显示省略标记(…),该属性支持IE6以上的版本IE7/8/9和除Firefox以外的现代标准浏览器:Chrome、Safari。Opera是个特例,但也有一个专门针对Opera的属性:
-o-text-overflow: ellipsis;
好了,下面就是完整的CSS代码
view sourceprint?
<style type="text/css">
#news-list {
list-style:none;
width:156px;  /*注意这个宽度*/
}
#news-list:after {
content:'';
display:block;
clear:both;
height:0px;
}
#news-list li {
clear:both;  /*清除li中的浮动*/
}
#news-list li a {
float:left;  /*标题向左浮动*/
color:#333;
text-decoration:none;
font-size:13px;
max-width:156px;  /*给标准浏览器一个最大宽度*/
height:24px;
!important;  /*强制文字不换行(标准浏览器)*/
white-space:normal;  /*溢出的时候文字换行,并配合上面的固定高度,对文字进行裁切*/
overflow:hidden;
text-overflow:ellipsis;  /*截断文字,显示省略号(...)*/
-o-text-overflow:ellipsis;  /*Opera的专用截断文字的属性*/
background:none;  /*解决IE6的莫名高度BUG,试试在IE6下去掉这个属性*/
}
#news-list li a:hover {
color:#000;
text-decoration:underline;
}
#news-list li span {
float:left;  /*日期向左浮动*/
color:#666;
padding-left:10px;
margin-right:-99px;  /*让标题和日期显示在同一行*/
_position:relative;  /*针对IE6使用相对定位*/
}
</style>