Html 基础 二

前端开发 作者: 2024-08-22 12:10:01
标签的显示样式 块级标签 div p h ul ol li 像h,p这种块级的标签,里面一般都是放文字 往他们里面放块级标签就会问题,比如往p标签里面放置div, 产生的结果如下 <p&

标签的显示样式

块级标签

div
p
h
ul
ol
li

行内元素

a
span
strong
b
em
i
del
s
ins
  • 所有的行内元素都在一行上,他的高和宽取决于内容的宽度和高度,我们自定义的高宽无效
  • 行内元素中一般放文本或者其他的行内元素
  • 可以把行内元素看作是文本

行内块元素

input 
img
td
  • 默认的宽高就是标签里面内容的宽高,但是我们也可以通过css控制
  • 他们可以和相邻的行内元素在一行上,但是彼此之间会通过空格间隔开
  • 高度,宽度,内边距,外边距都可以通过css控制
  • 可以把行内块元素看作是文本

标签的显示模式相互转换

x{
   display:inline
   display:block
   display:inline-block
}

导航栏案例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        nav{
            text-align: center;
        }
        a{
            font-size: 20px;
            color: #333333;
            /*行高等于盒子高,可以让文本上下居中*/
            line-height: 50px;
            text-decoration:none;
            text-align:center;
            background-color: pink;
            width: 150px;
            height: 50px;
            display: inline-block;
        }
        a:hover{
            background-color:aqua;
        }s
    </style>
</head>
<body>
<nav id="nav">
    <a href="#">导航栏</a>
    <a href="#">导航栏</a>
    <a href="#">导航栏</a>
    <a href="#">导航栏</a>
    <a href="#">导航栏</a>
    <a href="#">导航栏</a>
</nav>
</body>
</html>

行高问题

div{
	line-height: 10px;
	height: 10px
}

CSS的三大特性

层叠样式表

  • 多个css样式都修饰同一个标签,那么距离标签距离近的css样式生效
  • 层叠时仅仅会层叠掉冲突的样式。
<!DOCTYPE html>
<html lang="en">
<head>	
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
       a {
           color: #000;
           font-size: 30px;
       }
        a {
            color: aqua;
        }
    </style>
</head>
<body>
<nav id="nav">
    <a href="#">导航栏</a>
   
    <a href="#">导航栏</a>
</nav>
</body>
</html>

继承性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        nav {
            color: aqua;
        }
    </style>
</head>
<body>
<nav id="nav">
    <span>this is span</span>
</nav>
</body>
</html>

优先级

方式 贡献值
继承或者是* 0000
元素标签 0001
类,伪类 0010
ID 0100
行内样式 1000
!important 无穷大
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        span {
            color: red;
        }
        nav span{
            color: aqua;
        }
    </style>
</head>
<body>
<nav id="nav">
    <span>this is span</span>
</nav>
</body>
</html>

背景

body {
       background-image: url(1.jpg);
}
body {
    background-image: url(https://www.jb51.cc/res/2020/12-12/21/571664e71899566318514d678929c0f8.png);
    background-repeat: repeat;/*默认值,在横向和纵向上都会产生平铺效果*/
    background-repeat: no-repeat;/*无论图片多大,都不会产生平铺*/
    background-repeat: repeat-x;/*横向上平铺*/
    background-repeat: repeat-y;/*纵向上平铺*/
}
background-position: x y;

其中的x y 可以是方位词,如 center,left, right,top,bottom
也可以是 像素值
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
       div {
           height: 600px;
           width: 600px;
           background-color: aqua;
           background-image: url(1.jpg);
           background-repeat: no-repeat;
           background-position: center center;
       }
    </style>
</head>
<body>
    <div>
    </div>
</body>
</html>
bady{
    background-image: url(https://www.jb51.cc/res/2020/12-12/21/571664e71899566318514d678929c0f8.png);
    /*不会随着滚动条的滚动而发生变化,默认值是scroll,会随着滚动条的滚动而滚走*/
    background-attachment: fixed; 
}

购物车案例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
       a {
           height: 208.5px;
           width: 500px;
           display: block;
           background-image: url(./1.jpg);

       }
        a:hover {
            background-position: left bottom;
        }
    </style>
</head>
<body>
<a href="#"></a>
</body>
</html>

背景半透明

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        body {
            background-color: pink;
        }
        div {
            height: 200px;
            width: 200px;
            background: rgba(0,0.3);
        }
    </style>
</head>
<body>
    <div>
        this is div
    </div>
</body>
</html>

盒子模型

盒子边框border

div {
   width: 200px;
   height: 200px;
   border: solid;
}

通过border可以为盒子设置边框,有如下的选项
solid: 实线
none: 默认值,没有边框
dashed:边框是虚线
dotted:边框为点线
double:边框为双实线

还可以单独为某一个边设置边框
border-left
border-right
border-top
border-bottom

比如:
border-left: 1px solid red;

表格细线边框

table{
    width: 300px;
    height: 300px;
    border: 1px solid;
}
td {
    border: 1px solid;
    text-align: center;
}
table,td {
    border-collapse: collapse;
}

盒子内边距

div {
    /*设置上下左右均为10px*/
    padding: 10px;
}

div {
    /*设置上下10px,左右20px*/
    padding: 10px 20px;
}

div {
    /*设置上10px,左右15px ,下20px*/
    padding: 10px 15px 20px;
}

div {
    /*设置上10px,左15px ,右30px,下20px*/
    padding: 10px 15px 30px 20px;
}

清除所有的内外边距

* {
   margin: 0;
   padding: 0;
}

案例新闻列表

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        body {
            background-color: #eee;
        }
        .article {
            width: 378px;
            height: 263px;
            border: 1px solid #ccc;
            margin: 100px;
            padding:20px 16px 0;
        }
        .article h4 {
            color: #202026;
            font-size: 21px;
            border-bottom: 1px solid;
            padding-bottom: 2px;
        }
        .article ul {
            margin-top: 12px;
        }
        .article li {
            height: 28px;
            line-height: 28px;
            list-style:none;
            padding: 5px 20px;
            border-bottom: 1px dashed #cccccc;
        }
        .article li a{
              text-decoration: none;
              font-size: 16px;
              color: #333;
          }
        .article li a:hover{
            text-decoration: underline;
        }
    </style>
</head>
<body>
<div class="article-box">
    <div class="article">
        <h4 >最新新闻/New Article</h4>
        <ul>
            <li><a href="#">做一个有上进心的青年。</a></li>
            <li><a href="#">做一个有上进心的青年。</a></li>
            <li><a href="#">做一个有上进心的青年。</a></li>
            <li><a href="#">做一个有上进心的青年。</a></li>
        </ul>
    </div>
</div>
</body>
</html>

盒子水平居中

div{
    /*他可以让div中的 文字,行内元素,行内块元素水平居中对齐*/
    text-align: center
}
  • 让盒子居中对齐
div {
    /*上下0,左右自适应*/
    margin: 0 auto;
}

/*或者是这种写法*/
div {
	margin: auto;
}


盒子的外边距合并问题

padding不会撑开盒子的情况

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .father {
            width:200px;
            height: 150px;
            background-color: pink;
        }
        .son {
            padding: 20px;
        }
    </style>
</head>
<body>
<div class="article-box">
   <div class="father">
       <div class="son">123</div>
   </div>
</div>
</body>
</html>

圆角边框

div {
    width: 20px;
    height: 20px;
    border-radius: 50%;
}
<!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            body {
                background-color: #eee;
            }
            .dv {
                text-align: center;
            }
            a {
                width: 200px;
                height: 200px;
                display: inline-block;
                color: #f40;
                font-weight: 700;
                font-size: 18px;
                border-radius: 50%;
                text-decoration: none;
                background-color: #fff;
                line-height: 200px;
                margin: 30px;
            }
            a:hover {
                background-color: #ff4400;
                color: #ffffff;
            }
        </style>
    </head>
    <body>
    <div class="article-box">
        <div class="dv">
            <a href="#">点我升级</a>
            <a href="#">点我升级</a>
            <a href="#">点我升级</a>
            <a href="#">点我升级</a>
        </div>
    </div>
    </body>
    </html>

盒子影子

box-shadow: 水平阴影 垂直阴影 模糊距离 阴影尺寸 阴影颜色 内/外阴影
水平阴影: h-shadow   必须
垂直阴影:  v-shadow   必须
模糊距离:  blur		  可选
阴影尺寸:  spread	  可选	
阴影颜色:  color	  可选
内/外阴影: inset      可选

例:
div {
 	box-shadow: 0 15px 30px rgba(0,0.4)   
}
原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_66658.html
Html 基础 二