CSS基础语法

HTML只是表示页面的结构和内容-->骨

CSS描述额度是页面的样式-->皮

具体哦来说就是描述了任意一个网页的元素

大小/位置/字体/颜色/背景/边框

引入了CSS就是可以让一个页面变得美观

一.选择器

每一个CSS语句都包含了两个部分:选择器+应用的属性

p就是选择器.此处就表示选择页面中的所有p标签.

{}里面就是键值对结构,来表示css中的各种属性

键值对之间用;来分割,习惯每个键值对独占一行

建和值之间使用:来分割,习惯会在冒号后面价格空格

每个键值对就对应一个css属性

注意!

/**/是CSS中 的注释,不支持//

二.CSS的引入方式

CSS代码可以放在HTML文件中(通常放到style标签里

通过style标签.可以放到html中的任意位置

1.内部样式表

通过style标签,来写css.只适用于简单的CSS

2内联样式

通过html标签中的style属性.来应用一些样式

这种内联样式,通常会搭配JS来使用

值适合样式特别简单的情况,只是针对当前元素生效,不需要写选择器哪些

3.外部样式

把css代码单独提取出来放入一个.css文件中.然后再html代码里,通过link标签.引入该css文件

这种方式可以让多个HTML复用同一份样式

这种link标签,一般习惯放到html的head标签里,这个标签可以存多份

通过多个link来引入不同的css

表示来源这个文件

4.css的优化

如果多了一些换行,虽然对于程序员友好,但是整体的cs文件会非常大

由于css文件都是通过网络传输给浏览器的,然后由浏览器来解析,如果CSS文件变大,就会更吃网络带宽 影响效率,实际工作中,会打包

5.css的命名

java里用的是驼峰命名法

css里用的是脊柱命名法 用-分割单词 因为html和css不区分大小写

font_size 是蛇形命名法

三.选择器

选择器的功能就是选中页面的元素/标签

1.基础选择器

单个选择器构成的

1)标签选择器

写的选择器,就是一个html的标签名

也可以并集选择

2)类选择器

在css代码中,创建一个类名

在对应的html元素中,通过clss属性来引用这个类名,此时具有该类名的元素,就会应用相关的属性

3)id选择器

先给被选择的元素,设定个id属性,id在一个页面中是不能重读的,因此id选择器只能选中一个元素,不能选中多个

4)通配符选择器

  • 直接选中了页面上的所有元素

这个最大的用途就是用来取消浏览器的默认样式

这就表示针对所有页面的html都应用上述样式

2.复合选择器

把多种基础选择器都综合运用起来

1)后代选择器

通过多个选择器的组合,能够选中某个元素的子/孙子元素(后代元素)

2)子选择器

通过多个选择器的组合,能够选中某个元素里面的子元素

选择器1>选择器2

第二个ui表示子代.第三个li是孙代

所以用子代显示器看不到

用后代选择器就看得到

三.文本属性

1.文本颜色 coler

1)直接用单词

2)用三原色 rgb

qq截图自带取色器,c复制 得到

3)还是使用rgb.但是用十六进制表达式

4) 除了加上rgba 还可以加上alpha表示透明度

2.文本对齐

text-align

靠左

靠右

居中

3.设置下划线删除线缩进

css中表示尺寸的单位

1)px 像素

2)em 相对单位,表示当前元素文字大小

首行缩进当前文字大小的两个

4.行高

行高等于字体大小+行间距

设置行高的时候,其实会同时对上下两个方向产生影响.上下两个边距都是均等的

正因为行高是上下均等的,所以可以局域行高来实现垂直方向的 文本居中

如果元素高度为150px 只需要给里面的文字设置行高为150px. 就可以达到文本垂直居中的效果

四.背景属性

1.设置背景颜色

background-color 具体用法和color类似

2.设置背景图片

3.设置背景图片的平铺效果

4.设置背景图的位置.background-position

5.设置背景图片的大小

通过px或者contain cover

6.圆角矩形

HTML里面的元素默认是矩形

css可以通过border-radius设置圆角效果

如果想要圆形,需要是正方形宽度的一半即可

length 是内切圆的半径. 数值越大, 弧线越强烈

五.盒子模型

块级元素:独占一行 可以设置宽度高度 div h1-h6 ul li table

行内元素 : 不独占一行 不能设置宽度高度 span a em i 理解成一个文本就可以,行内元素的尺寸取决于内部的内容

行内块元素:不独占一行.能够设置宽度高度

通过css中的display可以修改元素的显示模式

将行内元素改成块级元素

还可以用

none 不显示元素

1.盒子模型

HTML的元素其实是一个矩形

外边框:房子和房子之间的距离

边框:房子的墙

内边框:家具离墙的距离

家具就是内容

我们可以通过css的属性设置这几个方面的尺寸

1.外边距:margin

2.内边距 padding

3.边框 border

1).边框设置

实际开发中,我们会设置box-sizing属性为border-box 这个时候边框会挤压内容,而不是撑大元素

2) 内边框

padding 边框和内容之间的距离

3).margin

外边距会在垂直方向出现塌陷的情况.两个元素都设置外边距的时候,实际的外边距是两者的较大值,而不是相加,但是水平方向就会显示相加

五.弹性布局

弹性布局是安排页面上的元素排列

前面介绍的都是针对一个元素本身来设置的

div默认作为块级元素,是独占一行的,为了能让这些div能够在一个横行排列,就可以用弹性布局

给父元素设置一个属性.display:flex

案例-主页

根据这个来设置

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>个人主页</title>
</head>
<style>
    *{
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }
    .daohang{
        width: 100%;
        height: 50px;
        font-size: 20px;
        line-height: 50px;
        font-family: "宋体";
        text-align: center;

        background-color: aqua;
    }
    .center{
        width: 100%;
        height: 1200px;
        background-color: yellow;

        display: flex;
        justify-content:center;
        align-items: center;
    }
    .center .left,.center .right{
        width: 10%;
        height: 100%;
        background-color: red;
        font-size: 20px;
        line-height: 1000px;
        text-align: center;
        color:white
    }
    .center .contain{
        width: 80%;
        height: 100%;

        background-color: green;

        font-size: 20px;
        line-height: 1000px;
        text-align: center;
        color: white;
    }
    .foot{
        width: 100%;
        height: 100px;

        background-color: rebeccapurple;
        color: white;

        font-size: 20px;
        text-align: center;
        line-height: 100px;
    }
</style>
<body>
    <div class="daohang">
        导航栏
    </div>
    <div class="center">
        <div class="left">
            左侧边栏
        </div>
        <div class="right">
            右侧边栏
        </div>
        <div class="contain">
            内容区
        </div>
 
    </div>
    <div class="foot">
        页脚
    </div>
    
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值