CSS中的重要选择器

引入外部样式文件(link):

<link type="text/css" rel="stylesheet" href="          ">

href路径写你需要的链接地址,与图片插入路径类似

 

选择器:

元素选择器(直接对标签进行设置):

eg:

*{
    border:1px black soild;
    padding:4px;
}

这是通配符,此代码能设置html中所有能设置的标签border和padding

div
{
background:grey;
font-size:30px;


}

这个是设置了html的所有div标签为这个样式


常用的属性选择器

E{...}:指定该CSS样式对所有的E元素起作用

E[attr]{...}:指定该CSS样式对具有attr属性的E元素起作用

E[attr=value]{...}:指定该CSS样式对所有包含attr属性,且属性值为value的字符串,E起作用。

E[attr^=value]{...}:指定该CSS样式对所有包含attr属性,且属性值为value开头的字符串,E起作用。

E[attr*=value]{...}:指定该CSS样式对所有包含attr属性,且属性值为包含value的字符串,E起作用。

下面写几个简单的样式个大家看看:

<head>
   <style> 
	div{
		width:300px;
		height:30px;
		background:red;
		border:1px solid black;
		padding:10px;
	}
	/* 对有id属性的div元素起作用的CSS样式*/
	div[id]{
			background-color:green;
		}
		
	/* 对id属性以xx开头的div元素起作用的css样式*/
	div#zzxx{
	background:orange;
	color:#fff;
	}
	/*对id值包含xx的div元素起作用的CSS样式*/
	div[id*=xx]{
		background:blue;
	}

	/*对id属性值等于xx的div元素起作用的css样式*/
	div[id=xx]{
	background:#111;
	color:#fff;
	}
	</style>
</head>


<body>
    <div > 没有任何属性的div元素</div>
	<div id="a">带id属性的div元素</div>
	<div id="zzxx">id属性值包含xx字符串的div元素</div>
	<div id="xxyy">id属性值以xx开头的div元素</div>
	<div id="xx">id属性值为xx的div元素</div>
</body>

效果图片:

id选择器,class选择器。


 

选择器 style中写法权重
class..long{...}10
id##long{...}100

 

 

 

 

这俩个选择器是很使用也是使用次数最多的选择器


兄弟选择器:

Selector1~Selector2{...}/*Selector1、Selector2都是有效的选择器*/

eg:

/*匹配id为android*的元素后面、class属性为long的兄弟节点*/
#android~.long
{
    background:red;
}

选择的是#android后面class="long"的所有标签,如果#android后面有多个class="long"的标签,那是选定多个,但是不能选中前面class="long"的标签。


选择器的组合:

如果想让一份CSS样式对多个选择器起作用。那就可以利用选择器组合来实现。选择器组合的语法如下:

Selector1,Selector2,Selector3{...}      /*Selector1、Selector2、Selector3都是有效的选择器*/

对于这个组合而言,{...}定义的样式会对前面列出的所有选择器匹配的元素起作用。


伪类选择器:

:first-letter:该选择器对应的CSS样式对指定对象内的第一个字符起作用。

:first-line:该选择器对应的CSS样式对指定对象内的第一行内容起作用。

:before:该选择器与内容相关的属性结合使用,用于在指定对象内部的前端插入内容。

:after:该选择器与内容相关的属性结合使用,用于在指定对象内部的尾端插入内容。

 

接下来给大家演示一下代码:

<head>
 <style>
	   /*定义对作为其父元素的第一个子节点的li元素起作用的css样式*/
	li:first-child{
	border:1px solid black;
	}
	
	/*定义对作为其父元素的最后一个子节点的li元素起作用的css样式*/
	li:last-child{
	background:#aaa;
	}
	
	/*定义对作为其父元素的第2个子节点的li元素起作用的css样式*/
	li:nth-child(2){
	color:#888;
	}
	
	/*定义对作为其父元素的倒数第2个子节点的li元素起作用的css样式*/
	li:nth-last-child(2){
	font-weight:bold;
	}
	/*定义对作为其父元素的唯一的子节点的li元素起作用的css样式*/
	span:only-child{
	font-size:80pt;
	font-family:"隶书";
	}
	</style>
</head>



<body>
	<ol>
		<li>1111111</li>
		<li>2222222</li>
		<li>3333333</li>
		<li>4444444</li>
		<li>5555555</li>
	</ol>
	
	<ul>
		<li>6666666</li>
		<li>7777777</li>
		<li>8888888</li>
		<li>9999999</li>
		<li>
			<span>aaaaaaa</span>
		</li>
	</ul>
	<span>疯狂java联盟</span>

效果图:


常见的UI元素状态选择器:

:link  :匹配Selector选择器且未被访问(点击)前的元素。(通常只能是超链接)

:visited :匹配Selector选择器且访问过的元素。(通常只能是超链接)。

:active   :匹配Selector选择器且处于被用户激活。(通常在被点击与释放之间)

:hover    :悬停状态。

:focus :已得到焦点元素。

:disable:当前不可用状态。

:default:页面打开时处于打开状态。

以hover为例子:

<head>	 
   <style>
	td{
	border:1px solid black;
	padding:4px;
	}
	tr:hover{
	background-color:#aaa;
	}
	</style>
</head>
<body>
	<table style="width:400px; border-collapse:collapse">
	<tr>
		<td>111111</td>
	</tr>
	
	<tr>
		<td>222222</td>
	</tr>
	
	<tr contenteditable="true">
		<td>333333</td>
	</tr>
	
	
	
	
	</table>

代码中的;

tr:hover{
    background-color:#aaa;
    }

就设置了<td>标签鼠标悬浮的状态:(background:#aaa

 

如图:

这是将鼠标悬浮在上面发生的属性改变。


脚本中修改显示样式:

一、获取到需要设置CSS样式的目标元素,例如可以使用getElementById()方法。

二、修改目标元素CSS样式,常用方法有俩种。

修改行内CSS属性值:例如使用: “obj.style.属性名=属性值"的js代码即可。

修改HTML元素的class属性值:使用如:“obj.className=class选择器”的js脚本即可

                                 (第一行修改的是单个属性。第二行修改的是一套属性)

下面给大家代码举例一下:

eg:动态增加立体效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
	<style type="text/css">
	.solid{
	
	width:160px;
	padding:5px;
	text-align:center;
	border-right:#222 4px solid;
	border-top:#ddd 4px solid;
	border-left:#ddd 4px solid;
	border-bottom:#222 4px solid;
	background:#ccc;
	}
	</style>
</head>
<body>
    <script >
	function chg()
	{
		document.getElementById('up').className="solid";
	}
	
	</script>
	
	<input type="button " onclick="chg()"  value="增加立体效果">
	<div id="up"> 有立体效果的层</div>
	
	
	
</body>
</html>

代码中将id="up"的div改成了class="solid"属性的div.所以div样式也发生改变

效果图:

 

随机改变背景颜色:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
	function change()
	{
		var bgColor="" ;
		
		for(var i=0;i<6;i++)
		{
			bgColor += Math.round(Math.random()*16);
		}
		document.body.style.backgroundColor="#"+bgColor;
	}
	document.onclick=change;
	</script>
</body>
</html>

循环6次;每次随机设置一个0~16的16进制数字;前面加“#‘.把bgColor等于它。形成了一个生成#000000~#FFFFFF之间的背景颜色,用点击事件触发。

效果图:


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
校园悬赏任务平台对字典管理、论坛管理、任务资讯任务资讯公告管理、接取用户管理、任务管理、任务咨询管理、任务收藏管理、任务评价管理、任务订单管理、发布用户管理、管理员管理等进行集化处理。经过前面自己查阅的网络知识,加上自己在学校课堂上学习的知识,决定开发系统选择小程序模式这种高效率的模式完成系统功能开发。这种模式让操作员基于浏览器的方式进行网站访问,采用的主流的Java语言这种面向对象的语言进行校园悬赏任务平台程序的开发,在数据库的选择上面,选择功能强大的Mysql数据库进行数据的存放操作。校园悬赏任务平台的开发让用户查看任务信息变得容易,让管理员高效管理任务信息。 校园悬赏任务平台具有管理员角色,用户角色,这几个操作权限。 校园悬赏任务平台针对管理员设置的功能有:添加并管理各种类型信息,管理用户账户信息,管理任务信息,管理任务资讯公告信息等内容。 校园悬赏任务平台针对用户设置的功能有:查看并修改个人信息,查看任务信息,查看任务资讯公告信息等内容。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。项目管理页面提供的功能操作有:查看任务,删除任务操作,新增任务操作,修改任务操作。任务资讯公告信息管理页面提供的功能操作有:新增任务资讯公告,修改任务资讯公告,删除任务资讯公告操作。任务资讯公告类型管理页面显示所有任务资讯公告类型,在此页面既可以让管理员添加新的任务资讯公告信息类型,也能对已有的任务资讯公告类型信息执行编辑更新,失效的任务资讯公告类型信息也能让管理员快速删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值