在绝大过程中,想确定一个元素在网站当中的固定位置,绝对定位是实现这个方式的解决办法。在网页当中,绝对定位可精确的控制元素在网页当中的位置,我们可使用顶部、底部、左侧和右侧,附上一个像素值来控制元素所在的位置。
position:absolutetop:50pxright:50px
上面的CSS设置一个元素的位置从浏览器的顶部和右边保持50px。你也可以在div内使用绝对定位。
2、覆盖所有样式
写CSS的时候都应该知道,当你想给一个元素添加一个新的CSS样式,但这个样式之前已经被定义过了。此时我们可以采用!important来定义。
例如,如果我想在我的网站的特定部分的H3标题是红色而不是黄色,可以使用下面的CSS:
.section h3 {color:red !important}
3、居中
居中分很多情况,一般会分成文本居中和DIV的内容居中。
文本居中
文本居中使用text-align:center。如果想让文本在左右两侧,可以使用左侧或右侧。
DIV内容
DIV内容居中跟文本居中不一样。CSS可以这样定义:
#div1 { display: blockmargin: autowidth: anything under 100% }
把宽度设置为“100%以下”的原因是因为如果它是100%宽度,那么如果是全宽度,并且不需要居中。最好有一个固定的宽度,如60%或550像素等。
4、垂直对齐(对于一行文本)
要使菜单的高度和文本的行高一致,可以这么设置:
.nav li{line-height:50pxheight:50px}
5、悬停效果
这适用于按钮,文本链接,网站的部分,图标等等。如果你想做一个悬停效果,可以试试:
.entry h2{font-size:36pxcolor:#000font-weight:800} .entry h2:hover{color:#ffeb3b}
这个功能可以让你的h2标签的颜色从黑色变成黄色。
6、悬停效果过渡
对于悬停效果,如使用菜单或网站上的图像,我们肯定不希望颜色快速贴近结果,所以我们可以通过使用时间变化来达到过渡的效果。
.entry h2:hover{color:#ffeb3btransition: all 0.5s ease}
这就使得样式上的改变,可以是从黑色变黄色的过渡时间是0.5秒,而不是立即变成黄色。这使得悬停效果更加和谐而不会显得太突兀。
7、a标签的状态
我们在遇到a标签的时候,一定要给a标签做样式定义,否则特别容易造成用户在使用上的困惑。通过样式可以让用户知道这个链接是否被点击过,更利于用户体验。
a:link {color: blue} a:visited {color: red}
8、轻松调整图像大小以适应
说到这个样式,我之前不知道可以通过以下方式达到图片的自适应效果。作为一个新手,我相信这个效果肯定有很多人都想做,当然,我提供的方法也只是其中的一种:
img {max-width:100%height:auto}
这个样式意味着最大的图像可能是100%,并根据图像宽度自动计算高度。在某些情况下,您可能还必须指定宽度为100%。
9、父级元素和子元素
如果ni不希望选择任意的后代元素,而是希望缩小范围,只选择某个元素的子元素,请使用子元素选择器:
h1 >strong {color:red}
特殊情况下你可能会想定义第N个子元素的样式,这样就可以用到下面这个样式:li:nth-child(n)
具体的使用方法可以去w3school上看。
10、将CSS应用于多个类或选择器
如果你想要在所有图片,博客部分和侧边栏上添加相同的边框。你不必写出相同的CSS样式重复3次。只需列出这些项目,用逗号分隔:
.blog,img,.sidebar {border: 1px solid #000}
1、按钮的margin-left:-10px这样的负值。或者学度娘,取消input边框另作。
2、css里面font-size:16pxfont-family:"Times New Roman",Georgia,Serif这样。
3、可以设置input的type为image,然后加背景图片。
给出一个例子
<!DOCTYPE HTML><html lang="en">
<head>
<meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" />
<meta http-equiv="Content-Type" content="text/htmlcharset=UTF-8">
<title>test</title>
<link rel="stylesheet" href="css.css" type="text/css" media="screen">
<script src="http://libs.baidu.com/jquery/1.7.0/jquery.min.js"></script>
</head>
<body>
<div class="search">
<input id="search" type="text" autofocus="autofocus" >
<div class="submit">搜索</div>
</div>
<style type="text/css">
.search{width:300pxoverflow: hiddenborder:1px solid #dddfont-size:16pxheight:2emline-height: 2em}
.search:hover{border:1px solid #00af60}
.search input#search{padding-left: 10pxoutline: nonewidth:230pxborder:0}
.search .submit{cursor:pointerfloat: rightpadding:0 10pxcolor: #00af60border-left: 1px solid #ddd}
.search:hover .submit{background: #00af60color:#FFFborder:0/*background:url(1.jpg)*/}
</style>
<script type="text/javascript">
$(function(){
$('.search').hover(function(){$('#search')[0].focus()})//
$('.search .submit').click(function(){
alert("在此检查然后js提交")
})
})
</script>
</body>
</html>
CSS只是定义样式 的,表单在CSS里怎么写问的不对。我觉得你可能问的是如果定义表单里的样式吧?单说一个真实姓名:<input type="text" name="yhm" id="yhm" />这样写的话是不是觉得不好看?你再看看这个:
<input type="text" name="yhm" id="yhm" style="background-color:#009933border:10px #666666 solid" />
是不是变样了?再看看这样
<style type="text/css">
<!--
#yhm {background-color:#009933border:10px #666666 solid
}
-->
</style>
<input type="text" name="yhm" id="yhm" />
和上面的一样吧? #yhm {}指的就是ID="YHM"
再试试这样
<style type="text/css">
<!--
input {background-color:#009933border:10px #666666 solid
}
-->
</style>
<input type="text" name="yhm" id="yhm" />
和上面的一样吧? input指的是INPUT标签,如果用了这样的定义,你里面所有的INPUT标签都会变成这样的。
常用的还有一个
<style type="text/css">
<!--
.YHM {background-color:#009933border:10px #666666 solid
}
-->
</style>
<input type="text" name="yhm" id="yhm" class="YHM" />
和上面的还是一样的。
但这个的作用范围就是你指定了class="YHM"的标签