码迷,mamicode.com
首页 > Web开发 > 详细

CSS的属性相关和模态框

时间:2019-10-12 21:01:31      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:垂直   type   设置   相关   normal   repeat   之间   htm   center   

1012 CSS的属性相关和模态框

1、宽和高

width属性可以为元素设置宽度。

height属性可以为元素设置高度。

块级标签才能设置宽度,内联标签的宽度由内容来决定。

2、字体属性

2.1 文字字体:font-family

font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体,则会尝试下一个。浏览器会使用它可识别的第一个值。

eg:

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        body { font-family: "Microsoft Yahei", "微软雅黑", "Arial", sans-serif }
    </style>
</head>
<body>
<span>我是span</span>

</body>

2.2 字体大小:font-size

eg:

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
       span{
            font-size: 23px;
        }
    </style>
</head>
<body>
<span>我是span</span>

</body>

如果设置成inherit表示继承父元素的字体大小值。

2.3 字重(粗细):font-weight

字重的值:

描述
normal 标准粗细
bold 粗体
bolder 更粗
lighter 更细
100~900 设置具体粗细,400等同于normal,而700等同于bold
inherit 继承父元素字体的粗细值,默认值,

eg:

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
       span{
            font-weight: normal;
        }
    </style>
</head>
<body>
<span>我是span</span>

</body>

2.4 字体颜色:color

eg:下面代码都是设置字体颜色为红色

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
       span{
            /*十六进制值 - 如color: #FF0000*/
            color: #FF0000;
            /*一个rgb值 - 如color: rgb(255,0,0)*/
            color: rgb(255,0,0);
            /*颜色的名称 - 如color:  red*/
            color: red;
            /*color:rgba(255,0,0,0.3),第四个值为alpha, 指定了色彩的透明度/不透明度,它的范围为0.0到1.0之间*/
            color: rgba(255,0,0,0.3);
        }
    </style>
</head>
<body>
<span>我是span</span>

</body>

3、文字属性

就不一一叙述了,直接用代码展示,具体属性都写在代码里

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        /* 1、文字对齐方式:text-align属性规定水平对齐方式
        left    左边对齐 默认值
        right   右对齐
        center  居中对齐
        justify 两端对齐
        */
        div{
            width: 100px;
            background-color: yellow;
            text-align: center;
        }
        /* 2、文字装饰方式:text-decoration属性来给文字添加特殊效果
        none    默认。定义标准的文本。
        underline   定义文本下的一条线。
        overline    定义文本上的一条线。
        line-through    定义穿过文本下的一条线。
        inherit 继承父元素的text-decoration属性的值。
        */
        div{
            width: 100px;
            background-color: yellow;
            text-align: center;
            text-decoration: underline;
        }
        /* 3、去除列表标题前的符号样式:list-style属性*/
        li{
            list-style: none;
        }
        /* 4、首行缩进:text-indent属性来将段落的第一行缩进*/
        p{text-indent: 32px}
        /* 5、文字之间的距离: letter-spacing属性*/
        span{letter-spacing: 5px}
        /* 6、行高:line-height属性*/
        div{
            width: 400px;
            height: 200px;
            text-align: center;
            line-height: 200px;
            /*行高跟div高度一样就变成垂直居中*/
        }
    </style>
</head>
<body>
<div>我是文字</div>
<a></a>
<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>
<p>阳光明媚的一天</p>
<span>今天心情格外好</span>

</body>
</html>

4、背景属性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        div{
            width: 1070px;
            height: 300px;
            color: yellow;
            
            /* 1、背景颜色:backgronud-color属性*/
            background-color: black;

            /* 2、背景图片:background-image: url("图片名")*/
            background-image:url("猴.jpg");

            /* 3、图片平铺方式:background-repeat属性
            repeat(默认):背景图片平铺排满整个网页
            repeat-x:背景图片只在水平方向上平铺
            repeat-y:背景图片只在垂直方向上平铺
            no-repeat:背景图片不平铺
            */
            background-repeat: repeat-x;

            /* 4、背景位置:background-position属性
            background-position: left top;  图片放在左边最上方
            background-position: 200px 200px; 只能控制左和上
            */
            background-position: left top;
        }
    </style>
</head>
<body>
<div>齐天大圣</div>

</body>
</html>

5、边框:border

边框属性

  • border-width
  • border-style
  • border-color

i1 { border-width: 2px; border-style: solid; border-color: red; }

通常使用简写方式:

i1 { border: 2px solid red; }

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        /*边框样式
        none    无边框。
        dotted  点状虚线边框。
        dashed  矩形虚线边框。
        solid   实线边框。
        */
        div{
            height: 100px;
            width: 100px;
            /*     颜色 边框实线 粗细*/
            border: green solid 3px;
            /*圆角边框:border-radius属性,设置50%就是圆形*/
            border-radius: 10px;
        }
    </style>
</head>
<body>
<div></div>

</body>
</html>

6、display属性

display属性用于控制HTML元素的显示效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        div{
            /*none:设置消失,HTML文档中元素存在,但是在浏览器中不显示*/
            /*display: none;*/
            
            /*inline:将块级标签变为行内标签*/
            display: inline;
        }
        span{
            /*block:将行内标签变为块级标签*/
            display: block;
        }
        .a{
            width: 100px;
            height: 100px;
            background-color: red;
            /*inline-block:使元素同时具有行内元素和块级元素的特点。*/
            display: inline-block;
        }
    </style>
</head>
<body>
<div>齐天大圣</div>
<span>六耳猕猴</span>
<span class="a">通臂猿猴</span>
<div>泼猴</div>

</body>
</html>

display:"none"与visibility:hidden的区别:

visibility:hidden: 可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。

display:none: 可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。

7、盒子模型

  • margin(外边距): 用于控制元素与元素之间的距离;margin的最基本用途就是控制元素周围空间的间隔,从视觉角度上达到相互隔开的目的。
  • padding(内填充): 用于控制内容与边框之间的距离;
  • Border(边框): 围绕在内边距和内容外的边框。
  • Content(内容): 盒子的内容,显示文本和图像。

7.1 盒子模型之 margin

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .a{
            width: 400px;
            height: 400px;
            border: black 1px solid;
            /* 设置边框下面的距离*/
            margin-bottom: 20px;
            margin-left: 40px;
            /*推荐使用简写,按照顺时针一起设置:上,右,下,左*/
            /*margin:30,0,20,40;*/

            /*常见居中*/
            /*margin: 0 auto;*/
        }
        .b{
            width: 300px;
            height: 300px;
            border: red 1px solid;
        }
    </style>
</head>
<body>
<div class="a">123</div>
<div class="b">456</div>

</body>
</html>

7.2 盒子模型之 padding

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        div{
            width: 400px;
            height: 400px;
            border: pink solid 2px;
            /*元素内容123距离左边框30像素*/
            padding-left: 30px;
            /*元素内容123距离上边框100像素*/
            padding-top: 100px;
        }
    </style>
</head>
<body>
<div>123</div>

</body>
</html>

推荐使用简写:

div{ padding: 5px 10px 15px 20px;}

补充padding的常用简写方式:

  • 提供一个值,用于四边;
  • 提供两个值,第一个用于上-下,第二个用于左-右;
  • 如果提供三个值,第一个用于上,第二个用于左-右,第三个用于下;
  • 提供四个参数值,将按上-右-下-左的顺序作用于四边;

8、float 浮动属性

在 CSS 中,任何元素都可以浮动。

浮动元素会生成一个块级框,而不论它本身是何种元素。

关于浮动的两个特点:

  • 浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
  • 由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        /* float属性值:
         left:向左浮动
          right:向右浮动
          none:默认值,不浮动*/
        .a,.b,.c{
            width: 500px;
            height: 200px;
        }
        .a{
            background-color: red;
            float: left;
        }
        .b{
            background-color: pink;
            float: right;
        }
        .c{
            background-color: yellow;
            float: right;
        }
        .p{
            border: yellow 2px dotted;
        }
        /*清除浮动,解决塌陷问题*/
        .clear:after{
            content: "";
            display: block;
            /*clear属性规定元素的哪一侧不允许其他浮动元素,只会对自身起作用,而不会影响其他元素.
            left    在左侧不允许浮动元素。
            right   在右侧不允许浮动元素。
            both    在左右两侧均不允许浮动元素。
            none    默认值。允许浮动元素出现在两侧。
            */
            clear: both;
        }
    </style>
</head>
<body>
<div class="p clear">
    <div class="a">123</div>
    <div class="b"></div>
    <div class="c"></div>
</div>

</body>
</html>

9、overflow 溢出属性

属性值:

描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        div{
            width: 200px;
            height: 200px;
            border: yellow solid 3px;
            overflow: hidden;
        }
        img{
            /*图片本身超出了div边框的宽高,下面的设置就是把图片宽高缩小到200px,
            使其能够完整显示,不然上面的溢出属性是hidden,会把超出div边框的图片剪掉*/
            max-width: 200px;
            min-height: 200px;
        }
    </style>
</head>
<body>
<div>
    <img src="猴.jpg" alt="">
</div>
</body>
</html>

10、position 定位属性

属性值:relative(相对定位)、absolute(绝对定位)、fixed(固定定位)

10.1 relative(相对定位)

相对定位是相对于该元素在文档流中的原始位置,即以自己原始位置为参照物。有趣的是,即使设定了元素的相对定位以及偏移值,元素还占有着原来的位置,即占据文档流空间。对象遵循正常文档流,但将依据top,right,bottom,left等属性在正常文档流中偏移位置。而其层叠通过z-index属性定义。

注意:position:relative的一个主要用法:方便绝对定位元素找到参照物。eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        div{
            width: 200px;
            height: 200px;
            background-color: yellow;
            position: relative;
            /*相对原始位置,距离上边20px,距离左边40px移动*/
            top: 20px;
            left: 40px;
        }
    </style>
</head>
<body>
<div></div>

</body>
</html>

10.2 absolute(绝对定位)

定义:设置为绝对定位的元素框从文档流完全删除,并相对于最近的已定位祖先元素定位,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块(即body元素)。元素原先在正常文档流中所占的空间会关闭,就好像该元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。

重点:如果父级设置了position属性,例如position:relative;,那么子元素就会以父级的左上角为原始点进行定位。这样能很好的解决自适应网站的标签偏离问题,即父级为自适应的,那我子元素就设置position:absolute;父元素设置position:relative;,然后Top、Right、Bottom、Left用百分比宽度表示。

另外,对象脱离正常文档流,使用top,right,bottom,left等属性进行绝对定位。而其层叠通过z-index属性定义。

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        *{
            margin: 0;}
        .a{
            width: 400px;
            height: 400px;
            background-color: black;
            float: left;
        }
        .b{
            width: 400px;
            height: 400px;
            background-color: pink;
            position: relative;
            float: right;
        }
        .c{
            width: 200px;
            height: 200px;
            background-color: yellow;
            position: absolute;
            /*相对父级b来移动,top值为400px,就是距离b最上边400px,也就是变为了紧挨着b的最下边,
            原来所占的空间会关闭掉*/
            top: 400px;
            left: 30px;
        }
    </style>
</head>
<body>
<div class="a"></div>
<div class="b">
    <div class="c"></div>
</div>

</body>
</html>

10.3 fixed(固定定位)

fixed:对象脱离正常文档流,使用top,right,bottom,left等属性以窗口为参考点进行定位,当出现滚动条时,对象不会随着滚动。而其层叠通过z-index属性 定义。

注意点: 一个元素若设置了 position:absolute | fixed; 则该元素就不能设置float。这 是一个常识性的知识点,因为这是两个不同的流,一个是浮动流,另一个是“定位流”。但是 relative 却可以。因为它原本所占的空间仍然占据文档流。

在理论上,被设置为fixed的元素会被定位于浏览器窗口的一个指定坐标,不论窗口是否滚动,它都会固定在这个位置。

eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .a{
            height: 1800px;
            background-color: purple;
        }
        .b{
            width: 50px;
            height: 50px;
            background-color: green;
            position: fixed;
            bottom: 100px;
            right: 100px;
        }
    </style>
</head>
<body>
<div class="a">
    <div class="b">固定定位</div>
</div>
</body>
</html>

10.4 定位是否脱离文档流

脱离文档流:绝对定位、固定定位

不脱离文档流:相对定位

11、z-index 属性、opacity属性和模态框

1、z-index属性用来设置对象的层叠顺序

div{ z-index: 999; }

  1. z-index 值表示谁压着谁,数值大的压盖住数值小的,
  2. 只有定位了的元素,才能有z-index,也就是说,不管相对定位,绝对定位,固定定位,都可以使用z-index,而浮动元素不能使用z-index
  3. z-index值没有单位,就是一个正整数,默认的z-index值为0如果大家都没有z-index值,或者z-index值一样,那么谁写在HTML后面,谁在上面压着别人,定位了元素,永远压住没有定位的元素。
  4. 从父现象:父亲怂了,儿子再牛逼也没用。

2、opacity属性用来定义透明效果

取值范围值0.0~1.0,0是完全透明,1是完全不透明。与color:rgba(255,0,0,0.3)的第四个值一样作用

模态框eg:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>模态框</title>
    <style>
        .down{
            position: fixed;
            /*opacity: 0.7;*/
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background-color: rgba(255,192,203,0.7);
            z-index: 180;
        }
        .up{
            position: fixed;
            width: 200px;
            height: 200px;
            background-color: blue;
            z-index: 188;
            /*下面三行代码就可以让up元素压盖在down元素正中间*/
            top: 50%;
            left: 50%;
            margin: -100px 0 0 -100px;
        }
    </style>
</head>
<body>
<div class="down">Java</div>
<div class="up">Python</div>

</body>
</html>

CSS的属性相关和模态框

标签:垂直   type   设置   相关   normal   repeat   之间   htm   center   

原文地址:https://www.cnblogs.com/zhuangyl23/p/11663624.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!