zoukankan      html  css  js  c++  java
  • HTML 学习笔记 CSS样式(文本)

    CSS文本属性可以定义文本的外观

    通过文本属性 您可以改变文本的颜色 字符间距 文本对齐装饰文本 对文本进行缩进等等。


    缩进文本

    把web页面上的段落的第一行缩进,这是最常用的文本格式化效果。

    css 提供了text-indent属性 该属性可以方便的实现文本缩进。

    通过 text-indent属性 所有元素的第一行都可以缩进一个给定的长度,甚至该长度可以为负值。

    这个属性最常见的用途是将段落的首行缩进,下面的规则会是所有短路的首行缩进5em

    p {text-indent: 5em;}

    注意:一般来说可以为所有的块级元素添加text-indent 但无法将此属性应用于行内元素 图像之类的替换元素也无法应用text-indent属性。不过,如果一个块级元素(比如段落),在首行终有一个图像。他会随着该行的其余文本移动。

    提示:如果想把一个行内元素的第一行缩进,可以用做那边句或外边距创造出这种效果。

    使用负值

    text-indent可以使用负值,利用这种技术 可以实现很多有趣的效果  比如 悬挂缩进  即第一行悬挂在元素中余下部分的左边:

    p {text-indent: -5em;}

    不过在为 text-indent 设置负值时要当心,如果对一个段落设置了负值,那么首行的某些文本可能会超出浏览器窗口的左边界。为了避免出现这种显示问题,建议针对负缩进再设置一个外边距或一些内边距:

    p {text-indent: -5em; padding-left: 5em;}

    使用百分比值
    text-indent 可以使用所有长度单位,包括百分比值。
    百分数要相对于缩进元素父元素的宽度。换句话说,如果将缩进值设置为 20%,所影响元素的第一行会缩进其父元素宽度的 20%。
    在下例中,缩进值是父元素的 20%,即 100 个像素:

    div { 500px;}
    p {text-indent: 20%;}
    
    <div>
    <p>this is a paragragh</p>
    </div>

    继承

    text-indent 属性可以继承,请考虑如下标记:

    div#outer { 500px;}
    div#inner {text-indent: 10%;}
    p { 200px;}
    
    <div id="outer">
    <div id="inner">some text. some text. some text.
    <p>this is a paragragh.</p>
    </div>
    </div>

    以上标记中的段落也会缩进 50 像素,这是因为这个段落继承了 id 为 inner 的 div 元素的缩进值。

    水平对齐

    text-align是一个基本的属性,他会影响一个元素中的文本行互相之间的对齐方式 他的三个值相当直接 不过第四个 第五个则略有复杂。

    值 left、right 和 center 会导致元素中的文本分别左对齐、右对齐和居中。

    西方语言都是从左向右读,所有 text-align 的默认值是 left。文本在左边界对齐,右边界呈锯齿状(称为“从左到右”文本)。对于希伯来语和阿拉伯语之类的的语言,text-align 则默认为 right,因为这些语言从右向左读。不出所料,center 会使每个文本行在元素中居中。

    text-align:center 与 <CENTER>
    您可能会认为 text-align:center 与 <CENTER> 元素的作用一样,但实际上二者大不相同。
    <CENTER> 不仅影响文本,还会把整个元素居中。text-align 不会控制元素的对齐,而只影响内部内容。元素本身不会从一段移到另一端,只是其中的文本受影响。

    justify

    在两端对齐文本中,文本行的左右两端都放在父元素的内边界上。然后,调整单词和字母间的间隔,使各行的长度恰好相等。您也许已经注意到了,两端对齐文本在打印领域很常见。

    字间隔

    word-spacing 属性 可以改变单词之间的标准间隔 其默认值normal与设置值为0 是一样的。

    word-sapcing属性接受一个正长度值或者负长度值。如果提供一个正长度值 那么字之间的间隔就会增加 为 word-spacing设置一个负值 会把它拉近

    p.spread {word-spacing: 30px;}
    p.tight {word-spacing: -0.5em;}
    
    <p class="spread">
    This is a paragraph. The spaces between words will be increased.
    </p>
    
    <p class="tight">
    This is a paragraph. The spaces between words will be decreased.
    </p>

    字母间隔

    letter-spacing属性与word-spacing 的区别在于 字母间隔修改的是字符或者字母之间的间隔。

    与 word-spacing 属性一样,letter-spacing 属性的可取值包括所有长度。默认关键字是 normal(这与 letter-spacing:0 相同)。输入的长度值会使字母之间的间隔增加或减少指定的量:

    h1 {letter-spacing: -0.5em}
    h4 {letter-spacing: 20px}
    
    <h1>This is header 1</h1>
    <h4>This is header 4</h4>

    字符转换

    text-transform属性处理文本的大小写 这个属性有四个值:

    none

    uppercase

    lowercase

    capitalize

    默认值none对文本不做任何改动 将使用源文本中的源有大小写。uppercase和lowercase分别是大写和小写 capitalize只对每个单词的首字母大写。

    文本装饰

    文本装饰属性就是text-decoration。它又下面几个值

    none

    underline

    overline

    line-through

    blink

    不出所料,underline 会对元素加下划线,就像 HTML 中的 U 元素一样。overline 的作用恰好相反,会在文本的顶端画一个上划线。值 line-through 则在文本中间画一个贯穿线,等价于 HTML 中的 S 和 strike 元素。blink 会让文本闪烁,类似于 Netscape 支持的颇招非议的 blink 标记。

    处理空白符

    white-space属性会影响用户代理对源文本中的空格 华航 和 tab字符的处理

    通过使用该属性,可以影响浏览器处理字之间和文本行之间的空白符的方式。从某种程度上讲,默认的 XHTML 处理已经完成了空白符处理:它会把所有空白符合并为一个空格。所以给定以下标记,它在 Web 浏览器中显示时,各个字之间只会显示一个空格,同时忽略元素中的换行:

    <p>This     paragraph has    many
        spaces           in it.</p>
    p {white-space: normal;}

    例子:

    1.设置文本颜色

    demo.css
    body {
        color: red;
    }
    h1 {
        color: green;
    }
    
    p.ex {
        color: blue;
    }
    demo.html
        <head>
            <meta charset="UTF-8">
            <title>颜色</title>
            <link rel="stylesheet" type="text/css" href="CSS/demo.css" />
        </head>
        <body>
            <h1>这是 heading 1</h1>
            <p>这是一段普通的段落。请注意,该段落的文本是红色的。在 body 选择器中定义了本页面中的默认文本颜色。</p>
            <p class="ex">这是另一段文本 通过class索引设置样式</p>
    
        </body>

    2:设置文本的背景颜色

    demo.css
    p span {
        background-color: yellow;
    }
    demo.html
    <head>
            <meta charset="UTF-8">
            <title>背景颜色</title>
            <link rel="stylesheet" type="text/css" href="CSS/demo.css" />
        </head>
        <body>
            <h1>设置文本的背景颜色</h1>
            <p>这是一段我精心准备的文本 <span>这些会包含在内敛元素span内 会有背景颜色</span>之外的这些没有颜色</p>
            <div>
                这是一个块元素 也被<span>span包含 但是不会有背景色</span>
            </div>
    
        </body>

    3:规定字符间距

    demo.css
    p.big {
        letter-spacing: 2em;    
    }
    p.small {
        letter-spacing: -0.5em;
    }
    demo.html
    <head>
            <meta charset="UTF-8">
            <title>规定字符间距</title>
            <link rel="stylesheet" type="text/css" href="CSS/demo.css" />
        </head>
        <body>
            <p class="big">tianlianfeng</p>
            <p class="small">tianlianfeng</p>
        </body>

    4.对齐文本

    <style type="text/css">
    h1 {text-align: center}
    h2 {text-align: left}
    h3 {text-align: right}
    </style>
    </head>
    
    <body>
    <h1>这是标题 1</h1>
    <h2>这是标题 2</h2>
    <h3>这是标题 3</h3>
    </body>

    5:修饰文本

    <head>
            <meta charset="UTF-8">
            <title>规定字符间距</title>
            <style type="text/css">
                p.underline {
                    text-decoration: underline;
                }
                p.overline {
                    text-decoration: overline;
                }
                p.linethrough {
                    text-decoration: line-through;
                }
                p.none {
                    text-decoration: none;
                }
                /*事实证明对p是没效果的*/
                p.blink  {
                    text-decoration: blink;
                }
            </style>
        </head>
        <body>
            <p class="underline">这段标题下面有下划线</p>
            <p class="overline">这段话上面又一个线</p>
            <p class="linethrough">中间穿过一条线</p>
            <p class="none">没有任何效果</p>
            <p class="blink">会闪烁据说</p>
        </body>

    6:缩进文本

    <style type="text/css">
    p {text-indent: 1cm}
    </style>
    </head>
    
    <body>
    <p>
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    这是段落中的一些文本。
    </p>
    </body>

    7:控制字符大小写

    <head>
            <meta charset="UTF-8">
            <title>控制大小写</title>
            <style type="text/css">
                p.uppercase {
                    text-transform: uppercase;
                }
                p.lowercase {
                    text-transform: lowercase;
                }
                p.capitalize {
                    text-transform: capitalize;
                }
                h1 {
                    text-transform: uppercase;
                }
            </style>
        </head>
        <body>
            <h1>This Is An H1 Element</h1>
            <p class="uppercase">This is some text in a paragraph.</p>
            <p class="lowercase">This is some text in a paragraph.</p>
            <p class="capitalize">This is some text in a paragraph.</p>
        </body>

    8:增加单词间的间距

    <head>
            <meta charset="UTF-8">
            <title>单词间距</title>
            <style type="text/css">
                p.big {
                    word-spacing: 1cm;
                }
                p.small {
                    word-spacing: -0.5cm;
                }
            </style>
        </head>
        <body>
            <p class="big">this is tianlianfeng</p>
            <p class="small">this is tianlianfeng</p>
        </body>

    控制折行

    <head>
            <meta charset="UTF-8">
            <title>单词间距</title>
            <style type="text/css">
                p {
                    /*保留折行 和空格*/
                    /*white-space: pre-wrap;*/
                    /*没有空格和折行*/
                    /*white-space: nowrap;*/
                    /*忽略空白符 保留折行*/
                    white-space: pre-line;
                }
            </style>
        </head>
        <body>
            <p>
                这是一些文本。    这是一些文本。
                        这是一些文本。      这是一些文本。
                这是一些文本。
                    这是一些文本。    这是一些文本。
    
                这是一些文本。
            </p>
        </body>
  • 相关阅读:
    COJ 0981 WZJ的数据结构(负十九)树综合
    BZOJ 3153 Sone1
    点分治模板
    thinkphp或thinkcmf 《文章编辑,文章添加》 访问另一个表的分类,添加入另一个表时将id值以(,)逗号分隔储存,编辑时以(,)逗号分隔并且相等的id值被选中
    《手机端》让多出的导航变水平拖动,不让他 float 撑下去
    favicon.ico 网站小图标标识
    CSS3实战开发: 折角效果实战开发
    jquery怎么在点击li标签之后添加一个在class,点击下一个li时删除上一个class?
    position 有五个值:static、relative、absolute、fixed、inherit。
    CSS3 transition 属性过渡效果 详解
  • 原文地址:https://www.cnblogs.com/huanying2000/p/6184059.html
Copyright © 2011-2022 走看看