찾다
웹 프론트엔드HTML 튜토리얼CSS样式图文详解(二):css属性_html/css_WEB-ITnose

主要内容

  • CSS的单位
  • 字体属性
  • 文本属性
  • 背景属性
  • 列表属性
  • 盒子模型
  • 定位属性:position、float、overflow、z-index等
  • 导航栏的制作
  • 鼠标的属性cursor
  • 滤镜的介绍
  • CSS的单位:

    html中的单位只有一种,那就是像素px,所以单位是可以省略的,但是在CSS中不一样。
    CSS中的单位是必须要写的,因为它没有默认单位。

  • 绝对单位:1 in=2.54cm=25.4mm=72pt=6pc。
    各种单位的含义:
    in:英寸Inches (1 英寸 = 2.54 厘米)
    cm:厘米Centimeters
    mm:毫米Millimeters
    pt:点Points,或者叫英镑 (1点 = 1/72英寸)
    pc:皮卡Picas (1 皮卡 = 12 点)

  • 相对单位:
    px:像素
    em:印刷单位相当于12个点
    %:百分比,相对周围的文字的大小

  • 为什么说像素px是一个相对单位呢,这也很好理解。比如说,电脑屏幕的的尺寸是不变的,但是我们可以让其显示不同的分辨率,在不同的分辨率下,单个像素的长度肯定是不一样的啦。

    百分比%这个相对单位要怎么用呢?这里也举个例子:

    字体属性

    css样式中,常见的字体属性有以下几种:

    p{	font-size:50px; 		/*字体大小*/	font-style:italic ;		/*斜体*/	font-weight:bold;	/*粗体:属性值写成bolder也可以*/	font-family:幼圆,黑体; 	/*字体类型:如果没有幼圆就显示黑体,没有黑体就显示默认*/	font-variant:small-caps;  /*小写变大写*/}

    另外还有一个font属性,它是一个简写属性。指的是:可以将上面的多个属性写在一个声明里面,个人不太喜欢这种写法。

    文本属性

    CSS样式中,常见的文本属性有以下几种:

  • letter-spacing:0.5cm ; 单个字母之间的间距
  • word-spacing:1cm; 单词之间的间距
  • text-decoration:overline; 字体修饰:underline下划线、line-through中划线、overline上划线
  • text-transform:lowercase; 单词字体大小写。uppercase大写、lowercase小写
  • color:red; 字体颜色
  • text-align="属性值;" 在当前容器中的对齐的方式。属性值可以是:left、right、center(在当前容器的中间)、justify
  • text-transform:lowercase; 单词的字体大小写。属性值可以是:uppercase(单词大写)、lowercase(单词小写)、capitalize(每个单词的首字母大写)
  • 这里来一张表格的图片吧,一览无遗:

    背景属性

    CSS样式中,常见的背景属性有以下几种:(经常用到,要记住)

  • background-color:#ff99ff; 设置元素的背景颜色。
  • background-image:url(images/2.gif); 将图像设置为背景。
    括号里的路径,可以加引号,也可以不加引号。
  • background-repeat:no-repeat;。设置背景图片是否及如何重复。
    属性值可以是:no-repeat(不要平铺)、repeat-x(横向平铺)、repeat-y(纵向平铺)
  • background-position:center right; 设置背景图片在当前容器中的位置。
    属性值可以是:right center(将图片放到右边的中间)、center center(将图片放到正中间)。属性值可以填很多种,看后面的表格吧。
  • background-attachment:scroll; 设置背景图片是否跟着滚动条一起移动。
    属性值可以是:scroll(背景图片不动)、fixed(背景图片跟着滚动条一起移动)。
    注意属性值的含义不要搞反了,它的含义是根据滚动条来定义的。
    }
  • 另外还有一个简写属性叫做background,它的作用是:将上面的多个属性写在一个声明中。

    background-repeat这个属性在开发的时候也是经常用到的。我们通过设置不同的属性值来看一下效果吧:
    不加这个属性时:(即默认时)

    属性值为no-repeat(不要平铺)时:

    属性值为repeat-x(横向平铺)时:

    属性值为repeat-y(纵向平铺)时:

    这里来一张表格的图片吧,一览无遗:

    列表属性

    ul li{	list-style-image:url(images/2.gif) ;  /*列表项前设置为图片*/	margin-left:80px;  /*公有属性*/}

    另外还有一个简写属性叫做list-style,它的作用是:将上面的多个属性写在一个声明中。

    我们来看一下list-style-image属性的效果:

    给列表前面的图片加个边距吧,不然显示不完整:

    这里来一张表格的图片吧,一览无遗:

    盒子模型(重要)

    之前我们是把标签看做是一个对象。从现在开始,我们要把标签理解成一个盒子。

    标准盒子模型:

    IE盒子模型:

    上图显示:

  • 在 CSS 盒子模型 (Box Model) 规定了元素处理元素的几种方式: 内容、内边距、边框、外边距
  • 在 CSS的标准盒子模型中,width 和 height 指的是内容区域的宽度和高度。增加内边距、边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸。IE盒子模型中,width 和 height 指的是内容区域+border+padding的宽度和高度。
    注:Android中也有margin和padding的概念,意思是差不多的,如果你会一点Android,应该比较好理解吧。区别在于,Android中没有bording这个东西,而且在Android中,margin并不是控件的一部分,我觉得这样做更合理一些,呵呵。

  • 例如,上图所示:假设框的每个边上有10个像素的外边距和5个像素的内边距。如果希望这个元素框达到100个像素,就需要将内容的宽度设置为70像素。

    标签有必要强调一下。很多人以为标签占据的是整个页面的全部区域,其实是错误的,正确的理解是这样的:整个网页最大的盒子是,即浏览器。而是的儿子。浏览器给默认的margin大小是8个像素,此时占据了整个页面的一大部分区域,而不是全部区域。来看一段代码。
    <!doctype html><html lang="en"> <head>  <meta charset="UTF-8">  <meta name="Generator" content="EditPlus&reg;">  <meta name="Author" content="">  <meta name="Keywords" content="">  <meta name="Description" content="">  <title>Document</title>	<style type="text/css">		div{			width: 100px;			height: 100px;			border: 1px solid red;			padding: 20px;			margin: 30px;		}	</style> </head>  <body>	<div>有生之年</div>	<div>狭路相逢</div> </body></html>

    上面的代码中,我们对div标签设置了边距等信息。打开google浏览器,按住F12,显示效果如下:

    补充一下,如果我在css样式中这样写:

    padding:20 30 40 50;

    上方代码的设置边距的顺序是:上、右、下、左(顺时针方向)。margin的道理是一样的。

    定位属性(position,float,overflow,z-index)

    在讲之前,有个概念叫顺序流,需要强调一下。

    顺序流:所有的标签的初始排列顺序就称为顺序流。

    有两种情况会脱离本身的顺序流:

  • 1、控件的位置设置为绝对定位。
  • 2、设置控件的float属性。
  • 1、pisition属性:

    定位属性position的属性值可以是absolute、relative。

    position定位分为绝对定位和相对定位:

  • position:absolute; 绝对定位:定义横纵坐标,原点在父容器的左上角。脱离了本身的顺序流。横坐标用left表示,纵坐标用top表示。
  • 绝对定位的举例:

    	<style type="text/css">		div{				position: absolute;/*绝对定位*/					left: 10px;/*横坐标*/					top: 20px;/*纵坐标*/		}	</style>
  • position:relative; 相对定位:相对于自己原来的位置。
  • 相对定位的举例:

    <!doctype html><html lang="en"> <head>  <meta charset="UTF-8">  <meta name="Generator" content="EditPlus&reg;">  <meta name="Author" content="">  <meta name="Keywords" content="">  <meta name="Description" content="">  <title>Document</title>	<style type="text/css">		body{			margin: 0px;		}		#div1{			width: 200px;			height: 200px;			border: 1px solid red;		}		#div2{			position: relative;/*相对定位:相对于自己原来的位置*/				left: 50px;/*横坐标:正值表示向右偏移,负值表示向左偏移*/				top: 50px;/*纵坐标:正值表示向下偏移,负值表示向上偏移*/			width: 200px;			height: 200px;			border: 1px solid red;			}	</style> </head> <body>	<div id="div1">有生之年</div>	<div id="div2">狭路相逢</div> </body></html>

    效果:

    2、float属性:浮动

    float属性会让元素脱离原来的顺序流,它的属性值可以是:

  • none:默认值,对象不漂浮
  • left:文本流向对象的右边
  • right:文本流向对象的左边
  • 举例:

    我们知道,在默认情况下,两个div标签是上下进行排列的。现在由于float属性让上图中的两个

    标签出现了浮动,于是这里两个标签在另外一个层面上水平排列了。而

    标签还在自己的层面上遵从顺序流进行排列。

    3、clear属性:禁止浮动

    clear属性的属性值可以是:

  • none:默认值,允许两边都可以有浮动对象
  • left:不允许左边有浮动对象
  • right:不允许右边有浮动对象
  • both:不允许有浮动对象
  • 4、overflow属性:超出范围的内容要怎么处理

    overflow属性的属性值可以是:

  • auto:浏览器自己解决。在必需时裁切对象多余的内容或显示滚动条。一般采用这个属性值。
  • visible:默认值。多余的内容不剪切也不添加滚动条,会全部显示出来。
  • hidden:不显示超过对象尺寸的内容。
    对象将以包含对象的 window 或 frame 的尺寸进行裁切,并且 clip 属性设置将失效。
  • scroll:总是显示滚动条。
  • 针对上面的不同的属性值,我们来看一下效果:
    举例:

    <!doctype html><html lang="en"> <head>  <meta charset="UTF-8">  <meta name="Generator" content="EditPlus&reg;">  <meta name="Author" content="">  <meta name="Keywords" content="">  <meta name="Description" content="">  <title>Document</title>	<style type="text/css">		div{			width: 100px;			height: 100px;			background-color: #00cc66;			margin-right: 100px;			float: left;		}		#div1{			overflow:auto;/*超出的部分让浏览器自行解决*/		}		#div2{			overflow:visible;/*超出的部分会显示出来*/		}		#div3{			overflow:hidden;/*超出的部分将剪切掉*/		}	</style> </head> <body>	<div id="div1">其实很简单 其实很自然 两个人的爱由两人分担 其实并不难 是你太悲观 隔着一道墙不跟谁分享 不想让你为难 你不再需要给我个答案</div>	<div id="div2">其实很简单 其实很自然 两个人的爱由两人分担 其实并不难 是你太悲观 隔着一道墙不跟谁分享 不想让你为难 你不再需要给我个答案</div>	<div id="div3">其实很简单 其实很自然 两个人的爱由两人分担 其实并不难 是你太悲观 隔着一道墙不跟谁分享 不想让你为难 你不再需要给我个答案</div> </body></html>

    效果:

    5、z-index属性:属性值大的位于上层,属性值小的位于下层

    这句话可能比较难理解。我们来看例子吧。

    这是默认情况下的例子:(div2在上层,div1在下层)

    现在加一个z-index属性,要求效果如下:

    鼠标的属性cursor

    鼠标的属性cursor有以下几个属性值:

  • auto:默认值。浏览器根据当前情况自动确定鼠标光标类型。
  • pointer:IE6.0,竖起一只手指的手形光标。就像通常用户将光标移到超链接上时那样。
  • hand:和pointer的作用一样:竖起一只手指的手形光标。就像通常用户将光标移到超链接上时那样。
  • 比如说,我想让鼠标放在那个标签上时,光标显示手状,代码如下:

    p:hover{	cursor: pointer;}

    另外还有以下的属性:(不用记,需要的时候查一下就行了)
    all-scroll :  IE6.0 有上下左右四个箭头,中间有一个圆点的光标。用于标示页面可以向上下左右任何方向滚动。
    col-resize :  IE6.0 有左右两个箭头,中间由竖线分隔开的光标。用于标示项目或标题栏可以被水平改变尺寸。
    crosshair :  简单的十字线光标。
    default :  客户端平台的默认光标。通常是一个箭头。
    hand :  竖起一只手指的手形光标。就像通常用户将光标移到超链接上时那样。
    move :  十字箭头光标。用于标示对象可被移动。
    help :  带有问号标记的箭头。用于标示有帮助信息存在。
    no-drop :  IE6.0 带有一个被斜线贯穿的圆圈的手形光标。用于标示被拖起的对象不允许在光标的当前位置被放下。
    not-allowed :  IE6.0 禁止标记(一个被斜线贯穿的圆圈)光标。用于标示请求的操作不允许被执行。
    progress :  IE6.0 带有沙漏标记的箭头光标。用于标示一个进程正在后台运行。
    row-resize :  IE6.0 有上下两个箭头,中间由横线分隔开的光标。用于标示项目或标题栏可以被垂直改变尺寸。
    text :  用于标示可编辑的水平文本的光标。通常是大写字母 I 的形状。
    vertical-text :  IE6.0 用于标示可编辑的垂直文本的光标。通常是大写字母 I 旋转90度的形状。
    wait :  用于标示程序忙用户需要等待的光标。通常是沙漏或手表的形状。
    *-resize :  用于标示对象可被改变尺寸方向的箭头光标。
    w-resize | s-resize | n-resize | e-resize | ne-resize | sw-resize | se-resize | nw-resize
    url ( url ) :  IE6.0 用户自定义光标。使用绝对或相对 url 地址指定光标文件(后缀为 .cur 或者 .ani )。

    滤镜

    这里只举一个滤镜的例子吧。比如说让图片变成灰度图的效果,可以这样设置滤镜:

    	<img  src="/static/imghwm/default1.png"  data-src="3.jpg"  class="lazy"   style="max-width:90%" alt="CSS样式图文详解(二):css属性_html/css_WEB-ITnose" >

    举例代码:

     <body>	<table>		<tr>			<td>原始图片</td>			<td>图片加入黑白效果</td>		</tr>	<tr>		<td><img  src="/static/imghwm/default1.png"  data-src="3.jpg"  class="lazy" alt="CSS样式图文详解(二):css属性_html/css_WEB-ITnose" ></td>		<td><img  src="/static/imghwm/default1.png"  data-src="3.jpg"  class="lazy"   style="max-width:90%" alt="CSS样式图文详解(二):css属性_html/css_WEB-ITnose" ></td> /*滤镜:设置图片为灰白效果*/	</tr>	</table> </body>

    效果如下:(IE有效果,google浏览器无效果)

    延伸:
    滤镜本身是平面设计中的知识。如果你懂一点PS的话···打开PS看看吧:

    爆料一下,表示博主有两年多的平面设计经验,我做设计的时间其实比写代码的时间要长,嘿嘿···

    导航栏的制作

    现在,我们利用float浮动属性来把无序列表做成一个简单的导航栏吧,效果如下:

    代码:

    <!doctype html><html lang="en"> <head>  <meta charset="UTF-8">  <meta name="Generator" content="EditPlus&reg;">  <meta name="Author" content="">  <meta name="Keywords" content="">  <meta name="Description" content="">  <title>Document</title>  	<style type="text/css">		ul{			list-style: none;/*去掉列表前面的圆点*/			width: 420px;			height: 60px;			background-color: black;/*设置整个导航栏的背景为灰色*/		}		li{			float: left;/*平铺*/			margin-right: 30px;			margin-top: 16px;		}		a{			text-decoration: none;/*去掉超链的下划线*/			font-size: 20px;			color: #BBBBBB;/*设置超链的字体为黑色*/			font-family:微软雅黑;		}	</style> </head> <body>	<ul>		<li><a href="">博客园</a></li>		<li><a href="">新随笔</a></li>		<li><a href="">联系</a></li>		<li><a href="">订阅</a></li>		<li><a href="">管理</a></li>	</ul> </body></html>

    实现效果如下:

    国庆这四天,连续写了四天的博客,白天和黑夜,从未停歇,只交替没交换,为的就是这每日一发。以后会不断更新的。那么关于前端基础的讲解暂时要告一段落了,因为博主还要去学习别的东西喽。

    大过节的,小白们如果觉得系列文章有帮助,点开支付宝发个一块两块的红包也无妨,呼呼哈哈:

    성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    HTML의 역할 : 웹 컨텐츠 구조HTML의 역할 : 웹 컨텐츠 구조Apr 11, 2025 am 12:12 AM

    HTML의 역할은 태그 및 속성을 통해 웹 페이지의 구조와 내용을 정의하는 것입니다. 1. HTML은 읽기 쉽고 이해하기 쉽게하는 태그를 통해 컨텐츠를 구성합니다. 2. 접근성 및 SEO와 같은 시맨틱 태그 등을 사용하십시오. 3. HTML 코드를 최적화하면 웹 페이지로드 속도 및 사용자 경험이 향상 될 수 있습니다.

    HTML 및 코드 : 용어를 자세히 살펴 봅니다HTML 및 코드 : 용어를 자세히 살펴 봅니다Apr 10, 2025 am 09:28 AM

    "Code"는 "Code"BroadlyIncludeLugageslikeJavaScriptandPyThonforFunctureS (htMlisAspecificTypeofCodeFocudecturecturingWebContent)

    HTML, CSS 및 JavaScript : 웹 개발자를위한 필수 도구HTML, CSS 및 JavaScript : 웹 개발자를위한 필수 도구Apr 09, 2025 am 12:12 AM

    HTML, CSS 및 JavaScript는 웹 개발의 세 가지 기둥입니다. 1. HTML은 웹 페이지 구조를 정의하고 등과 같은 태그를 사용합니다. 2. CSS는 색상, 글꼴 크기 등과 같은 선택기 및 속성을 사용하여 웹 페이지 스타일을 제어합니다.

    HTML, CSS 및 JavaScript의 역할 : 핵심 책임HTML, CSS 및 JavaScript의 역할 : 핵심 책임Apr 08, 2025 pm 07:05 PM

    HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

    HTML은 초보자를 위해 쉽게 배우나요?HTML은 초보자를 위해 쉽게 배우나요?Apr 07, 2025 am 12:11 AM

    HTML은 간단하고 배우기 쉽고 결과를 빠르게 볼 수 있기 때문에 초보자에게 적합합니다. 1) HTML의 학습 곡선은 매끄럽고 시작하기 쉽습니다. 2) 기본 태그를 마스터하여 웹 페이지를 만들기 시작하십시오. 3) 유연성이 높고 CSS 및 JavaScript와 함께 사용할 수 있습니다. 4) 풍부한 학습 리소스와 현대 도구는 학습 과정을 지원합니다.

    HTML의 시작 태그의 예는 무엇입니까?HTML의 시작 태그의 예는 무엇입니까?Apr 06, 2025 am 12:04 AM

    anexampleStartingtaginhtmlis, whithbeginsaparagraph.startingtagsareessentialinhtmlastheyinitiate rements, definetheirtypes, andarecrucialforstructurituringwebpages 및 smanstlingthedom.

    메뉴에서 점선 분할 효과의 중심 정렬을 달성하기 위해 CSS의 Flexbox 레이아웃을 사용하는 방법은 무엇입니까?메뉴에서 점선 분할 효과의 중심 정렬을 달성하기 위해 CSS의 Flexbox 레이아웃을 사용하는 방법은 무엇입니까?Apr 05, 2025 pm 01:24 PM

    메뉴에서 점선 분할 효과를 설계하는 방법은 무엇입니까? 메뉴를 설계 할 때는 일반적으로 접시 이름과 가격 사이에 왼쪽과 오른쪽을 정렬하는 것이 어렵지 않지만 점선 또는 중간의 점은 어떻습니까?

    온라인 코드 편집기는 코드 입력을 구현하는 데 사용하는 HTML 요소는 무엇입니까?온라인 코드 편집기는 코드 입력을 구현하는 데 사용하는 HTML 요소는 무엇입니까?Apr 05, 2025 pm 01:21 PM

    웹 코드 편집기의 HTML 요소 분석 많은 온라인 코드 편집기를 사용하면 사용자가 HTML, CSS 및 JavaScript 코드를 입력 할 수 있습니다. 최근에 누군가가 제안했습니다 ...

    See all articles

    핫 AI 도구

    Undresser.AI Undress

    Undresser.AI Undress

    사실적인 누드 사진을 만들기 위한 AI 기반 앱

    AI Clothes Remover

    AI Clothes Remover

    사진에서 옷을 제거하는 온라인 AI 도구입니다.

    Undress AI Tool

    Undress AI Tool

    무료로 이미지를 벗다

    Clothoff.io

    Clothoff.io

    AI 옷 제거제

    AI Hentai Generator

    AI Hentai Generator

    AI Hentai를 무료로 생성하십시오.

    인기 기사

    R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
    3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. 최고의 그래픽 설정
    3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
    3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
    3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

    뜨거운 도구

    VSCode Windows 64비트 다운로드

    VSCode Windows 64비트 다운로드

    Microsoft에서 출시한 강력한 무료 IDE 편집기

    SublimeText3 Mac 버전

    SublimeText3 Mac 버전

    신 수준의 코드 편집 소프트웨어(SublimeText3)

    SecList

    SecList

    SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

    SublimeText3 영어 버전

    SublimeText3 영어 버전

    권장 사항: Win 버전, 코드 프롬프트 지원!

    드림위버 CS6

    드림위버 CS6

    시각적 웹 개발 도구