css学习笔记

2.3背景相关属性

background-color背景色

background-img背景图片,需要图片的url地址

background-image: url("乌镇.JPG");

background-repeat:no-repeat;

background-position:right bottom;

background-repeat设置图片的复制排列方式

repeat在水平垂直两个方向复制排列

no-repeat不复制

repeat-x在水平方向复制排列

repeat-y在垂直方向复制排列

background-position设置图片在页面中的位置

也可以将这一组属性值装到一个background属性中,表达更加简洁

background: green url("乌镇.JPG") no-repeatright top;

书写顺序

背景色background-color 背景图片background-img 复制排列方式background-repeat 位置background-position

 

2.4尺寸相关属性

div{
    width:200px;
   
height:200px;
   
background-color:red;
}

max-width最大宽度

max-height最大高度

min-width最小宽度

min-height最小高度

 

2.5显示相关属性

隐藏元素的方法

(1)      visibility:hidden 仅仅隐藏内容,该元素所占位置依然存在

(2)      display:none 不仅隐藏内容,切不占位置

li{
    display:inline-block;
   
width:200px;
   
background-color:red;
}

display可以设置元素的显示模式

inline将块级元素以内联元素显示,此时width和height属性无效其空间取决于元素的内容

inline-block将块级元素以内联元素显示,同时兼具块级元素某些特征,比如可以使用width和height设置所占位置大小

block将内联元素以块级元素显示

span{
    display:block;
   
background-color:blue;
   
width:100px;
}

 

2.6盒子模型

margin外边距

margin-top margin-right margin-bottommargin-left

使用方式

(1)margin:30px表示上下左右边距都是30px

(2)margin30px 单独设置上下左右外边距

(2)margin:10px 20px 30px 40px 分别设置上右下左四个边距为10px 20px 30px 40px

 

padding内边距

使用方式和margin类似

 

border边框
/*border: 50px dotted blueviolet;*/
border-width: 边框宽度
border-style: 边框线条类型
border-color: 边框颜色

border:10px dashed blue

 

outline轮廓线 用法同border

 

2.7定位

定位方式有:static、fixed、relative、absolute

static静态定位(默认)

无定位,元素正常出现在(数据)流中,不受left right top bottom属性影响

<style type="text/css">
   
div{
       
width: 200px;
        height: 200px;
        background-color: red;
        position: static;
    }
</style>


   
<style type="text/css">
       
#div1{
           
width: 200px;
            height: 200px;
            background-color: red;
        }
       
#div2{
            
width: 200px;
            height: 200px;
            background-color: green;
        }
   
</style>
</head>
<body>
<div
id="div1"></div>
    <div
id="div2"></div>
</body>

   <style type="text/css">
       
#div1{
            width:200px;
            
height:200px;
           
background-color: red;
           
position: fixed;
           
left: 30px;
           
top: 20px;
       
}
        #div2{
            width:200px;
           
height: 200px;
           
background-color: green;
        
}
    </style>
</head>
<body>
<div
id="div1"></div>
    <div
id="div2"></div>
</body>

从结果可以看出,fix定位会将元素从流中“摘”出来单独进行定位位置取决于left、top

重新定位之后可能会出现重叠,通过z-index可以调整其顺序,但是定位z-index无效

    <style type="text/css">
       
#div1{
            width:200px;
            
height:200px;
           
background-color: rgb(255,0,0);
       
}
        #div2{
            width:200px;
           
height: 200px;
           
background-color: green;
           
position: relative;
           
top: 20px;
           
left: 30px;
       
}
        #div3{
            width:100px;
           
height: 100px;
           
background-color: blue;
       
}
    </style>
</head>
<body>
    <div
id="div1"></div>
    <div
id="div2"></div>
    <div
id="div3"></div>
</body>

从结果可以看出,相对单位是从原有位置进行位移,但并不影响后续元素的位置

absolute绝对定位

    <style type="text/css">
       
#div1{
            width:200px;
           
height: 200px;
           
background-color: rgb(255,0,0);
       
}
        #div2{
            width:200px;
           
height: 200px;
            
background-color:green;
           
position: absolute;
           
top: 20px;
           
left: 30px;
       
}
        #div3{
            width:100px;
           
height: 100px;
           
background-color: blue;
       
}
    </style>
</head>
<body>
    <div
id="div1"></div>
    <div
id="div2"></div>
    <div
id="div3"></div>
</body>

从结果可以看出:绝对定位的元素将从流中被“摘”出来,依靠left于top属性进行定位

于fixed类似,但是参照物不同

fixed参照根元素(浏览器)

absoult参照父容器

 

3.选择器

所谓选择器,指的是选择施加样式目标的方式

3.1元素选择器

用标签名作为选择器,选中所有相应的元素

    <style type="text/css">
       
div{
            font-size:32px;
           
color: blue;
       
}
        p{
            font-size:42px;
           
color: red;
       
}
    </style>
</head>
<body>
<div>
元素选择器</div>
<p>
元素选择器</p>
</body>

3.2id选择器

是根据id来选择元素,其样式定义形成为

#id name{

         ......

}

    <style type="text/css">
       
div{
            width:200px;
           
height: 200px;
       
}
        #div1{
            background-color:red;
       
}
        #div2{
            background-color:blue;
       
}
    </style>
</head>
<body>
<div
id="div1"></div>
<div
id="div2"></div>
</body>

3.3类型选择器

根据class属性来选择元素,其定义样式形式为

.class Name{

         ......

}

    <style type="text/css">
       
.even{
            width:200px;
           
height: 200px;
           
background-color: red;
       
}
        .odd{
            width:200px;
           
height: 200px;
           
background-color: blue;
       
}
    </style>
</head>
<body>
<div
class="odd"></div>
<div
class="even"></div>
<div
class="odd"></div>
</body>

从结果可以看出 .odd{......}定义的样式会施加到所有class=“odd”的元素上比如上例中的第一个和第三个div,当然也包括class=“odd”的<p>标签

3.4属性选择器

根据某个属性的特征比如有无、值等来选择

(1)根据有无某属性来选择

    <style type="text/css">
        [title]{
           
width: 200px;
           
height: 100px;
           
background-color: red;
            
border: 1px solid green;
       
}
   
</style>
</head>
<body>
<div title="div1">1</div>
<div title="div2">2</div>
<div>3</div>
<div title="adiv">4</div>
<div title="diva">5</div>
</body>

从结果可以看出,所有具有title属性的元素都应用了红色背景色的样式

(2)根据属性的值来选择

    <style type="text/css">
        [title="div2"]{
           
width: 200px;
           
height: 100px;
           
background-color: red;
           
border: 1px solid green;
       
}
   
</style>
</head>
<body>
<div title="div1">1</div>
<div title="div2">2</div>
<div>3</div>
<div title="adiv">4</div>
<div title="diva">5</div>
</body>

从结果可以看出,只有第二个div应用了红色背景样式,因为只有第二个div的title属性等于div2

 

~= 选中属性值包含指定完整单词的元素,类似word中的全字匹配

title^=“div”选中title属性值以“div”开头的元素

title$=“div”选中title属性值以“div”结尾的元素

title*=“div”选中title属性值包含“div”的元素

 

 

3.5结构(关系)选择器

(1)后代选择器

可以选择一个元素的后代元素。这个后代元素包括儿子、孙子...

写法(空格)

.content a{
    font-size:30px;
}

<body>
<h1>
尼泊尔将接入中国互联网</h1>
<div
class="content">
    <p>
此前,尼泊尔互联网主要</p>通过<a href="http://www.baidu.com">锡陀</a>塔那迦、比尔根杰、比拉德讷格尔等南部城镇与印度相连,从而获得入网服务。
</div>
<a
href="http://www.baidu.com">查看原文</a>
</body>

(2)子元素选择器

通过某一个元素选中直接后代元素

    <style>
        .content > a{
           
font-size: 30px;
       
}
   
</style>
</head>
<body>
<h1>尼泊尔将接入中国互联网</h1>
<div class="content">
    <p>此前,<span><a href="">尼泊尔</a> </span>互联网主要</p>通过<a href="http://www.baidu.com">锡陀</a>阿萨德<a href="http://www.baidu.com">锡陀</a>塔那迦、比尔根杰、比拉德讷格尔等南部城镇与印度相连,从而获得入网服务。
</div>
<a href="http://www.baidu.com">查看原文</a>
</body>

 

3.6并选择器

通过将相同的样式的类名放在一起,将类名直接使用逗号分隔.

<style>
       
.div1,.div2{
            position:relative;
           
width: 100px;
           
height: 100px;
       
}
        .div1{
            border:1px solid yellow;
       
}
        .div2{
            border:1px solid blue;
       
}
    </style>
</head>
<body>
<div
class="div1">我是div1</div>
<div
class="div2">我是div2</div>
</body>

 

 

3.7通配符选择器

通配符选择器可以选中页面中所有的标签。

写法   *{

}

注意:通配符选择器对页面所有的元素是都会设置对应的样式,而是实际上呢,有很多默认是不带任何的样式的

 

3.8兄弟选择器

(1).go-to + a{
    text-decoration:none;
}

选中最近的一个弟弟(元素)

 

<a class="go-to" href="http//wwwbaiducom">前往现场</a>
<a href="http//wwwbaiducom">前往现场2</a>
<a href="http//wwwbaiducom">前往现场3</a>

不选中自己

选中所有的弟弟(元素)

.go-to ~ a{
    text-decoration:none;
}

同样不选中自己

 

3.9伪类、伪元素选择器

伪类选择器

根据元素不同的状态,自动选择不同的样式

直接添加一个class,给这个class设定特殊样式

li:first-child  

a:hover鼠标滑过的时候添加样式

a:active被激活时(点击那一刻),添加样式

a:link链接地址未被访问时添加状态。必须设置href状态

a:visited链接地址被访问后添加状态。必须设置href状态

input:focus拥有键盘输入获取焦点的时候添加的样式

 

 

伪元素选择器

需要设置特殊效果的内容放到一个元素(标签)里面span

在添加一个class,对class设置特殊样式

p:first-letter  <line>          p:after          p:before

p:after{
    content:""
}

 

 

 

 

 

4.定位相关复习

4.1文档流

是html的布局机制,块元素(block)独占一行,内联元素(inlin)不独占一行

4.2相对定位

就是相对一个东西来定位。这个东西就是它本身。同时可以使用left、top、bottom、right来移动元素位置

相对定位不会脱离文档流

4.3绝对定位

找一个东西相对来绝对(决定)定位,这个东西(element)必须设定position并且定位非static。简而言之,这个小鬼(element)定位可以是他爸爸、他爷爷、他太公...(body)中有钱的(position:absoulute)或者是当官的(position:relative,fixed)不能是程序员(position:static或直接没有写定位)

注意:绝对定位脱离文档流。“父相子绝”。

使用绝对定位设置top:0和不设置top等属性有什么区别

如果没有设置top属性,元素的位置和没有脱离文档流的位置一样

4.4fixed定位

就是相对于浏览器窗口的定位

使用position属性,一般不使用margin,padding属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值