CSS

CSS伪类选择器

p:hover 选择鼠标指针位于之上的标签。

p:first-child 选择属于父元素的第一个标签,并且为p标签,如果第一个不是p标签则无效。

p:first-of-type 选择属于其父元素的首个出现的 <p> 元素。

.box:first-of-type (box为p标签类名)选择属于父元素的首个p标签,并且带有box类名,没有box类名则无效。

p:last-child 选择属于父元素的最后一个并且为p标签的标签,如果最后一个不是p标签则无效。

p:last-of-type 选择属于父元素的最后一个出现的p标签。

.box:last-of-type (box为p标签类名)选择属于父元素的最后一个p标签,并且带有box类名,没有box类名则无效。

p:nth-child(2) 选择属于父元素的第二个标签,并且为p标签,如果第二个不是p标签则无效。

p:nth-of-type(3) 选择属于父元素的第三个出现的p标签。

.box:nth-of-type(3)(box为p标签类名)选择属于父元素的第三个p标签,并且带有box类名,没有box类名则无效。

CSS行内元素与块级元素

行内元素:display:inline

与其他行内元素并排

不能设置宽高,默认的宽度就是文字的宽度

除了p之外,所有的文本级标签,都是行内元素。常见:a、span、b、strong、br

块级元素:display:block

独占一行,不能与其他任何元素并列。

能接受宽高,如果不设置宽度,那么宽度将默认变为父级的100%

所有的容器级标签,都是块级元素,以及p标签。常见:div、p、ul、ol、h1~h6

行内块级元素:display:inline-block

行内块状元素综合了行内元素和块状元素的特性,但是各有取舍

不自动换行

能够识别宽高

默认排列方式为从左到右。常见:img、textarea、input、button、select

块级元素和行内元素的相互转换:

我们可以通过display属性将块级元素(比如div)和行内元素进行相互转换

display:inline 转换为行内元素

display:block 转换为块级元素

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

display:none隐藏元素

文本属性

文本设置

<style>             div{                width: 100%;                border: 1px solid red;                color: red;                text-align: center;                font-size:24px;                text-indent: 2em;                text-decoration: underline;                letter-spacing: 20px;             }         </style>

文字设置

<!DOCTYPE html>
<html>
<head>
        <meta charset="UTF-8">
•   <title></title>
        <style>
•     div{
•       font-weight: bold;
•       font-style: italic;
•       font-size: 50px;
•       font-family: "宋体";
•     }
•   </style>
•   <!--
•     font-weight 文字加粗
•     bold 加粗
•     font-style 文字倾斜
•     italic 斜体
•     normal 正常
•     font-size 文字大小
•   -->
</head>
<body>
•   鲸英三期
</body>
</html>

行高

 div{
•       border: 1px solid red;
•       line-height: 50px;
•       height: 50px;
•     }

当文本行高与外部容器高一致时,文本会垂直居中

font复合样式

div{
•       /*font-weight: noemal;
•       font-style: normal;
•       font-size: 48px;
•       font-family: "宋体";*/
•       border: 1px solid red;


•       font: bold italic 26px/50px "宋体";
•     }

 

float浮动布局

使用行内块元素会被换行空格等影响布局,这里引入float布局来解决这个问题。

float可设置left、right、none,默认值为none。

注意标签使用了浮动后,父标签不会自动撑开,需要给父级清除浮动。

清除浮动一般使用伪元素:after来清除:

.clearfix:after {

content: ""; /内容设置为空!!!/

display: block; /显示为块级元素!!!/

height: 0; /设置高度为0!!!/

visibility: hidden; /设置不可见!!!/

clear: both; /清除浮动!!!/

定位布局

float布局已经能完成大部分的布局了,但是相对位置还是很局限,只能设置左右浮动。这里引入定位布局,相对 float更加灵活,但是会复杂一点。定位布局允许你定义标签相对于其正常位置应该出现的位置,或者相对于父元素、甚至是浏览器窗口本身的位置。

定位:position,可选值:relative、absolute、fixed、static(默认值)

relative

标签偏移某个距离。但是标签仍保持其未定位前的形状,它原本所占的空间仍保留。

absolute

标签从文档流完全删除(类似浮动),并相对于父级或祖先级有定位属性的标签做定位,如果都没设置定位属性则相对浏览器窗口做定位。

fixed

元素框的表现类似于将 position 设置为 absolute,只不过是相对浏览器窗口做的定位。

 

 

上一篇:免费好用的在线字体转换工具~~


下一篇:深入了解CSS