CSS笔记

(一)基础选择器

1.标签选择器:<style> p{color:red;font-size:12px;} </style>

2.类选择器:<style> .类名{属性1:属性值1;} </style>

                      <div class="类名"></div>

3.id选择器(一次只能选择一个标签):<style> #id名 {属性1:属性值1;} </style>

                     <div id="id名"></div>

4.通配选择器(选取页面中所有元素):<style> *{属性1:属性值1;} </style>

5.后代选择器:写法为外层标签写在前面,内层标签写在后面,中间用空格分隔。

6.子选择器:只能选择作为元素的最近一级子元素

父元素 > 子元素{样式声明}

7.并集选择器:可以选择多组标签同时为他们定义相同的样式。

元素1,元素2,元素n{样式声明}

8.伪类选择器:

a:link  选择所有未被访问的链接

a:visted  选择所有已被访问的链接

a:hover  选择鼠标指针位于其上的链接

a:active  选择活动链接(鼠标按下未弹起)

9.因为a链接在浏览器中具有默认样式,所以需要给链接单独指定样式。

a{  color:gray;

     text-decoration:none; }

a:hover { color:red;}

10.focus伪类:由于选取获得焦点的表单元素,一般情况下<input>类表单元素才能获取。

如:<style> input:focus {bcakground-color:yellow;} </style>

<body>  <input type="text"> <body>

(二)CSS属性

1.字体

属性表示注意点
font-size字号单位为px
font-family字体‘Microsoft YaHei’
font-weight字体粗细

加粗为700或bold

不加粗为400或normal

font-style字体样式倾斜是italic,不倾斜是normal
font字体连写

1.自提连写有顺序,不能随意换位置

2.其中字体和字号必须同时出现

表示属性值
预定义的颜色值red,green
十六进制#FF0000,#FF6600
RGB代码

rgb(255,0,0)

rgb(100%,0%,0%)

2.文本

属性注意点
text-align用于设置元素内文本内容的水平对齐方式,center,left,right
text-decoration可以给文本添加下划线,删除线,上划线(none,underline,overline,line-through)
text-indent用来指定文本的首行缩进,2em表示首行缩进2个字
line-height用来设置行间距离(行高=上间距+文本高度+下间距)

3.CSS引入方式

(1)内部样式表:写在html页面内部,<style></style>一般放在<head>中。

(2)行内样式:<div style="color:pink;font-size:12px;"></div>

(3)外部样式表(链接式):样式单独写在CSS文件中。

创建css文件,文件中只有样式;在html中<link rel="stylesheet" href="css文件路径”>

4.Emmet语法

生成标签直接输入标签名按tab键即可;

如果想要生成多个标签加上*即可,如:div*3;

如果有父子关系的标签,用>即可,如:ul>li;

如果有兄弟标签用+即可,如:div+p;

如果生成带有class或者id名字的标签x,直接写x.classname或者x#idname+enter/tab键即可;

如果生成的div类名是有顺序的,可以用自增符号$,如:.demo$*5.

5.元素显示模式:元素或标签以什么方式进行显示。

6.类别

(1)块元素:<h1>-<h6>,<p>,<div>,<ul>,<ol>,<li>

特点:自己独占一行;

        高度,宽度,外边距及内边距都可以控制;

        宽度默认为容器(父级)的100%;是一个容器及盒子,里面可以放行内或者块级元素;

        文字类的元素内不能使用块级元素,<h1>-<h6>,<p>主要用来存放文字,因此不能放块级元素。

(2)行内元素:<a>,<strong>,<b>,<em>,<i>,<del>,<s>,<ins>,<u>,<span>.

特点:相邻行内元素在一行上,一行可以显示多个;

        高宽直接设置是无效的;默认宽度就是他本身内容的宽度;

        行内元素只能容纳文本或其他行内元素;

        特殊情况链接<a>里面可以放块级元素.

(3)行内块元素:<img/>,<input/>,<td>

特点:行内块在一行上,但是他们之间会有空白缝隙,一行可以显示多个;

        默认宽度就是它本身内容的宽度;高度,行高,外边距以及内边距都可以控制。

(4)元素显示模式的转换

display:block(转换为块级元素)

display:inline(转换为行内元素)

display:inline-block(转换为行内块元素)

7.CSS背景

属性作用
background-color背景颜色预定义的颜色值,十六进制,RGB代码(transparent透明)
background-image背景图片url(图片路径)
background-repeat是否平铺repeat(默认),no-repeat,repeat-x,repeat-y
background-position背景位置length,position(left,top,bottom,center,right)
background-attachment背景附着scroll(背景滚动),fixed(背景固定)
背景简写书写更简单背景颜色,图片,平铺,滚动,位置
背景色半透明背景颜色半透明background:rgba(0,0,0,0.3);

注意:position,如果参数值是精确坐标,第一个是x,第二个是y,如果只指定一个,那一定是x,y垂直居中。

如果指定的两个值都是方位名词,则两个值前后顺序无关,left top=top left,如果只指定一个,则另一个默认居中对齐。

如果指定的两个值是精确值和方位名词混合使用,则第一个值是x坐标,第二个值是y坐标。

8.CSS三大特性

(1)层叠性(就近原则)那个样式离结构近就执行哪个样式

(2)继承性:子标签会继承父标签的某些样式;行高的继承,12px/1.5代表12乘以1.5.

(3)优先级

选择器选择器权重
继承或者*0,0,0,0,
元素选择器0,0,0,1
类选择器,伪类选择器0,0,1,0
ID选择器0,1,0,0
行内样式style=“”1,0,0,0
!important无穷大

注意:(1)比较权重从左到右。

(2)权重叠加:如果是复合选择器,则会有权重叠加,需要计算权重,计算不进位。

9.盒子模型

(1)border边框

样式:border-width:5px;

border-style:none/dashed(虚线)/solid(实线)/dotted(点线)/hidden/double/groove/ridge/inset/outset;

border-color:red;

border:1px solid red;

border-top/border-bottom/border-left/border-right;

border-collapse:collapse;(相邻边框合并在一起)

(3)圆角边框:border-radius:length(数据或高度的百分比);

注意:如果是一个正方形想要设置为一个圆,把数值修改为高度或者宽度的一半即可,或者直接写为50%。

(3)content内容

(4)padding内边距:padding-top/padding-bottom/padding-left/padding-right

padding:5px;(1个值表示上下左右都有5像素内边距;2个值表示第一个为上下内边距,第二个为左右内边距;3个值表示第一个代表上边距,第二个代表左右边距,第三个代表下边距;4个值则按逆时针依次为上右左下);

如果盒子本身没有指定width/height属性,padding不会撑开盒子大小。

(5)margin外边距:margin-left/margin-right/margin-top/margin-bottom:px;

注意:外边距可以让块级盒子水平居中,需满足:

盒子必须指定了宽度;盒子左右的外边距都设置为auto.

如:.one{

                  width:960px;

                   margin:0 auto;

                }

而行内元素或者行内块元素水平居中则是给父元素添加text-align:center即可。

外边距合并:当上下两个块元素(兄弟关系)相遇时,上一个有下边距,下一个有上边距 ,则它们之间的垂直距离两个值的最大值。

                      对于嵌套关系(父子)的块元素,父元素和子元素都有上外边距,此时父元素会选择值较大的外边距,并且给子元素设置的上外边距无效。

(6)清除内外边距

*{

        padding:0;清除内边距

        margin:0;清除外边距

 }

注意:行内元素为了照顾兼容性,尽量只设置左右内外边距,但转换为块级和行内块元素就可以了。

(7)盒子阴影:阴影不占空间

box-shadow:h-shadow  v-shadow blur(虚实)spread(范围)

描述
h-shadow必需,水平阴影的位置,允许负值。
v-shadow必需,垂直阴影的位置,允许负值。
blur可选,模糊距离。
spread可选,阴影的尺寸
color可选,阴影的颜色
inset可选,将外部阴影改为内部阴影

(8)文字阴影

text-shadow:h-shadow v-shadow blur color;

10.浮动(float)

普通流

定位

浮动

(1)网页布局第一准则:多个块级元素纵向排列找标准流,多个块级元素横向排列找浮动。

(2)选择器 { float:none/left/right;}

(3)设置了浮动的元素会漂浮在普通流的上面,不占位置,脱标。

如果多个盒子都设置了浮动,他们会按照属性值行内显示并且顶端对齐排列。

浮动的元素具有行内块元素的特性。

(4)浮动元素和标准流父级搭配使用。

11.清除浮动

(1)额外标签法:在浮动元素末尾添加一个空的标签(必须是块元素,不能是行内元素)。

(2)父级添加overflow属性

(3)父级添加after伪元素

(4)父级添加双伪元素

12.CSS定位:可以让盒子自由的在某个盒子内移动位置或者固定屏幕中某个位置,并且可以压住其他盒子。

(1)定位组成

定位=定位模式+边位移。

语义
static静态定位
relative相对定位
absolute绝对定位
fixed固定定位

边位移决定了该元素的最终位置,有4个属性:

边偏移属性示例描述
toptop:80px顶部偏移量,定义元素相对于其父元素上边线的距离
bottombottom:80px底部偏移量,定义元素相对于其父元素下边线的距离
leftleft:80px左侧偏移量,定义元素相对于其父元素左边线的距离
rightright:80px右侧偏移量,定义元素相对于其父元素右边线的距离

(2)静态定位static:无定位的意思;

选择器{position:static;}

相对定位relative:继续保留原来的位置;(相对于原来位置的移动)

绝对定位absolute:不再占有原来的位置;(相对于他祖先元素来说)

固定定位fixed:元素固定于浏览器可视区的位置,浏览器页面滚动时元素位置不变;(不在占用原来位置)

粘性定位sticky:相对定位和固定定位的混合(占有原先的位置 )

(3)子绝父相

(4)定位叠放次序z-index

选择器{z-index:1;}

13.元素的显示与隐藏

display:none(不再占有原来的位置)/block(转换为块级元素还有显示元素)

visibility:hidden(占有原来的位置)/visible(元素可视)

overflow:hidden/visible/scroll(显示滚动条)/auto(如果溢出显示滚动条)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值