zoukankan      html  css  js  c++  java
  • 细说文本属性wordwrap、whitespace、wordbreak

      本篇随笔主要介绍3个比较相近的文本属性word-wrap、white-space、word-break,先看看官方API对这3个属性的介绍——

    word-wrap : normal | break-word 
    normal    : 默认值。允许内容顶开指定的容器边界
    break-word: 内容将在边界内换行。如果需要,词内换行( word-break )也将发生 
    white-space :   normal | pre | nowrap 
    normal     :  默认值。默认处理方式。文本自动处理换行。假如抵达容器边界内容会转到下一行 
    pre        :  换行和其他空白字符都将受到保护。这个值需要IE6+或者 !DOCTYPE 声明为 standards-compliant mode 支持。
              如果 !DOCTYPE 声明没有指定为 standards-compliant mode ,此属性可以使用,但是不会发生作用。结果等同于 normal 。 nowrap    :  强制在同一行内显示所有文本,直到文本结束或者遭遇 br 对象。
    word-break : normal | break-all | keep-all 
    normal     : 默认值。允许在词间换行 
    break-all  : 该行为与亚洲语言的 normal 相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本 
    keep-all   : 与所有非亚洲语言的 normal 相同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本

      经试验,总结表格如下(略去pre):

    word-wrap

    white-space

    word-break

    效果

    备注

    normal(默认)

    normal(默认)

    normal(默认)

    词间换行,词内不换行

    所有浏览器显示效果相同

    break-word

    normal(默认)

    normal(默认)

    词间换行,词内换行

    所有浏览器显示效果相同

    normal(默认)

    nowrap

    normal(默认)

    词间不换行,词内不换行

    所有浏览器显示效果相同

    normal(默认)

    normal(默认)

    break-all

    词间不换行,词内不换行

    FF/Opera不同:不支持word-break属性

    normal(默认)

    nowrap

    break-all

    词间不换行,词内不换行

    所有浏览器显示效果相同

    break-word

    nowrap

    normal(默认)

    词间不换行,词内不换行

    所有浏览器显示效果相同

    break-word

    normal(默认)

    break-all

    词间不换行,词内换行

    FF/Opera不同:不支持word-break属性

    break-word

    nowrap

    break-all

    词间不换行,词内不换行

    所有浏览器显示效果相同

      由此可以得出,white-space:nowrap;的设置优先级是最高的,即:在存在white-space:nowrap;的情况下,无论word-wrap和word-break属性设置为何值,显示效果均相同——强制内容在同一行显示,词间不换行,词内不换行。

      还有两个常用的文本属性,如完成文本超出本分以"…"形式输出。则可用(所有浏览器显示均同):

      overflow:hidden;
      text-overflow:ellipsis;

      倘若强制文本同一样显示,并且文本超出部分以“…”形式输出,则只需添加white-space:nowrap;即可。

      倘若文本多行显示,并且文本超出部分以“…”形式输出,选择应用JavaScript进行控制是一个万全之策。

  • 相关阅读:
    Linux中yum命令镜像源和出错解决方案
    Redis编译安装
    Linux下安装Redis
    zabbix3.4.2的安装及配置
    【前端】活动表单
    【笔记】archlinux缺少部分常用工具
    【笔记】BootstrapTable带参数刷新数据的坑
    【笔记】Win7连接公司内网无法打开网页
    【笔记】Archlinux下配置rsyslog写日志到mysql
    【笔记】Gave up waiting for suspend/resume device
  • 原文地址:https://www.cnblogs.com/jinguangguo/p/2679202.html
Copyright © 2011-2022 走看看