使用css样式的基本原则,常用css样式
可以使用的css规则一般都有哪些,以及这些规则都具有哪些方面的作用.北外
DIV+CSS规则整理
在焦作等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计制作、网站设计 网站设计制作定制制作,公司网站建设,企业网站建设,成都品牌网站建设,成都营销网站建设,外贸营销网站建设,焦作网站建设费用合理。
一、善用css缩写规则
/*注意上、右、下、左的书写顺序*/
1. 关于边距(4边):
1px 2px 3px 4px (上、右、下、左)
1px 2px 3px (省略的左等于右)
1px 2px (省略的上等于下)
1px (四边都相同)
2. 简化所有:
*/ body{margin:0}------------表示网页内所有元素的margin为0
#menu{ margin:0}------------表示menu盒子下的所有元素的margin为0
3. 缩写(border)特定样式:
Border:1px solid #ffffff;
Border-width:0 1px 2px 3px;
4. 关于文字的缩写规则:
Font-style:italic; 斜体形式
Font-variant:small-caps/normal; 变体样式:小型大写字母/正常
Font-weight:bold;
Font-size:12px;
Line-height:1.2em(120%)/1.5em(150%);
Font-family:arrial,sans-serif,verdana;
缩写成:
Font:italic small-caps bold 12px/1.5emarrial,sans-serif;
注意:Font-size和Line-height用斜杠组合在一起不能分开写。
5. 关于背景图片的:
Background:#FFF url(log.gif) no-repeatfixed top left;
6. 关于列表:
List-style-type:square/none;
List-style-position:inside;
List-style-image:url(filename.gif);
缩写成:
List-style:none inside url(filename.gif)
二、运用4种方法来引入CSS样式
1.link
link rel=”stylesheet” type=”text/css”href=”a.css”
rel 关系
type 数据类型,有多种
href 路径
部分浏览器支持候选样式,关键字:alternate:
link rel=”stylesheet” type=”text/css”href=”a.css”
link rel=”alternate stylesheet”type=”text/css” href=”b.css”
link rel=”alternate stylesheet”type=”text/css” href=”c.css”
2.内部样式块
style
!–
h1{color:red;}
–
/style
3.@import
@import url{a.css}
注意:此指令必须放在style容器中,并且在所有样式之前
建议放在一个html注释中,!– –浏览器会不显示注释内的内容,而import等css代码能正常工作
4.内联样式
p style=”color:red;”
选择器是css的一个基本概念,基本规则如下:
1.规则结构:
h1 {color:red;}
选择器 {属性:值;}
这类是元素选择器,基本可以包括所有html的元素
属性值可以包括多个元素,如:border:1px solid red;
常用语法
1)分组:
选择器和声明都可以分组:
h1,h2,h3{color:red;background:#fff;} ,选择器用“,”分割开,属性用”;”分割
2)类选择器,即通过class=”stylename”应用的声明
定义:
.stylename{color:red;}
注意:
在html中可以使用多类选择:如class=”cn1 cn2 cn3″
3)ID选择器,即与id属性对应的样式
定义:
#a{color:red;} -这个定义对用id=”a”的元素
2.这部分都是我们常见的css语法,下面谈一下我们不常见的选择器语法
1)父子结构,跟文档结构图对应
如p span{border:1px solidred;}对应的是p下面的li标签,这个很用用途,可以准确定位.
一些特殊应用(IE7支持):
(1) p span{},匹配所有p下所有的span
(2) p + span{} ,匹配紧接着p元素后出现的第一个span标签,2者要有相同的父标签
2)属性选择器:(注意:属性选择器ie7才开始支持,以下版本并不支持,其他的浏览器基本可以)
语法:img[alt]{border:1pxsolid;}
表示对应有alt属性的img标签,当然可以支持多个属性对应,如img[alt][title]{};表示这个2个属性都有的img标签,
也可以与具体值对应:如:img[alt=”摄影”]{};
属性选择器中的高级应用,特殊匹配:
(1)img[class~=”b”], ~= : 与属性中的一个值对应的,即与img class=”a b c”对应
(2)[class^=”a”],以a开头的
(3)[class$=”a”],以a结束的
(4)[class*=”a”],包含a的
(5)[class|=”a”],等于a或以a开头的
3)伪类和伪元素
日常使用中主要是a标签的几个伪类:link:hover:active:visited
以及:first-child:first:before:left:right:lang:focus:fist-line等等
注意:动态伪类可以应用到任何元素,如,input:focus{background:red;}当input标签获得焦点时背景变红
以上语法组合使用,就能实现定位准确、简单间接的样式了。
三、选择器分类整合
优先级别遵循:行内样式 ID Class 标记
基本选择器标记选择器(eg:p/p)
类别选择器(eg:class)
ID选择器
复合选择器
“交集”复合选择器(eg:p.menu{color:red})必须是
标记+类别/ID组合
“并集”复合选择器(eg:h1,h2,h3{color:red})
“后代”复合选择器(eg: #menu.menulist{ ... })
“子”复合选择器(eg: #menu.menulist .selectit {... })
四、使用子选择器减少id和class的定义
示例结构:
div id="menu"
div class="menulist"
divclass="selectit"content/div
/div
/div
示例CSS:
#menu { ... }
#menu .menulist { ... }
#menu .menulist .selectit { ... }
五、使用组选择器为不同元素应用相同的样式
如h1,h2,h3,div{font-size:16px;font-weight:bold}
则h1,h2,h3,div元素的样式都为字体16像素,字体粗体
六、伪类和选择符的配合使用
将伪类和类组合起来用,就可以在同一个页面中做几组不同的链接效果了,例如,我们定义一组链接为红色,
访问后为蓝色;另一组为绿色,访问后为黄色:
a.red:link {color: #FF0000}
a.red:visited {color: #0000FF}
a.blue:link {color: #00FF00}
a.blue:visited {color: #FF00FF}
现在应用在不同的链接上:
a class="red"href="..."这是第一组链接/a
a class="blue" href="..."这是第二组链接/a
七、CSS的最近优先原则
/*如果对一个元素定义了多次样式,则以最近的一级优先,最近一级的样式将覆盖其他行内样式 ID Class标记*/
以下是引用片段:
CSS:
p{color:red}
.blue{color:blue}
.yellow{color:yellow}
HTML:
p此处显示为红色/p
p class="blue"此处显示为蓝色/p
p class="blue"style="color:green"此处显示为绿色/p
p class="blue yellow"此处显示为黄色/p
注意:
(1)注意样式的几个优先顺序(优先级由上至下递减,下面的样式覆盖上面的样式):
--元素style设定
--head区style/style中的设定
--外部引用css文件
(2)优先级不是按访问顺序来设定的,而是又css中的声明顺序来设的。
如上例中pclass="yellow blue"此处显示为黄色/p也显示为黄色,因为在css定义中.yellow在.blue
的后面。
八、书写正确的链接样式
当用css定义链接的各种状态时,要注意书写的顺序即::link :visited :hover :active利用首字母:L V H A,
你可以通过记忆LoVe,Hate,两个单词来记住其顺序。
:link --------链接的颜色
:visited -----鼠标点击后的颜色
:hover -------鼠标放上去未点的颜色(悬停)
:active-------鼠标点击瞬间的颜色
九、:hover的灵活运用
IE6不支持除a标签以外的:hover属性,我们了解:hover属性是鼠标悬停效果。在IE7和FF中,对几乎任意元素
都可以设置:hover属性效果。这对我们做不同的访问效果很好。
如:
p {
width : 360px;
height : 80px;
padding : 20px;
margin : 50px auto 0 auto;
border : 1px solid #ccc;
line-height : 25px;
background : #fff;
}
p:hover {
border : 1px solid #000;
background : #ddd;
}
----------------此效果针对IE7和FF
p a {
color : #00f;
text-decoration : none;
font-size : 13px;
}
p a:hover {
color : #036;
text-decoration : underline;
}
-----------------此效果针对IE6
十、定义A标签要注意的小问题
当我们定义a{color:red;}时,它代表了A的四种状态的样式,如果此时要定义一个鼠标放上的状态只要定义
a:hover就可以了,其它三种状态就是A中所定义的样式。
只定义了一个a:link时,一定要记得把其它三种状态定义出来!
十一、禁止内容换行与强制内容换行
在表格或层中我们可能希望内容不换行或强制换行,我们可以通过一些css属性来达到这些要求。
禁止换行:white-space:nowrap
强制换行:word-break:break-all; white-space: normal;
十二、区别relative和absolute
Absolute---CSS中的写法是:position:absolute; 他的意思是绝对定位,他是参照浏览器的左上角,配合
TOP、RIGHT、BOTTOM、LEFT(下面简称TRBL)进行定位,在没有设定TRBL,默认依据父级的做标原始点为
原始点。如果设定TRBL并且父级没有设定position属性,那么当前的absolute则以浏览器左上角为原始点进行
定位,位置将由TRBL决定。
Relative---CSS中的写法是:position:relative;他的意思是绝对相对定位,他是参照父级的原始点为原始点,
无父级则以BODY的原始点为原始点,配合TRBL进行定位,当父级内有padding等CSS属性时,当前级的原始
点则参照父级内容区的原始点进行定位。
十三、区别块级元素block和内联元素inline
块级---可定义宽高,另起独占一行(如:divul)
内联---不可定义宽高,如文本元素(如a span)
十四、区别display和visibility
display:none和visibility:hidden都可以隐藏一个元素,但visibility:hidden只是隐藏了元素的内容,但其使用的
位置空间仍然被保留。而display:none则相当把元素从页面中去除,其占用位置也将被删除。
十五、背景background的一些语法
background-image:url(背景图案.jpg,gif,bmp);
background-color:#FFFFFF; (背景颜色)
background-color : transparent; --设定背景为透明色–
background-repeat 改变背景图片的重复并排的设定
说明
repeat 背景图片并排
repeat-x 背景图片以X方向 并排
repeat-y 背景图片以Y方向 并排
no-repeat 背景图片不 以并排的方式处理
background-attachment是否固定图片位置
说明
scroll 拉动卷轴时,背景图片会跟着移动(缺省值)
fixed 拉动卷轴时,背景图片不会跟着移动
以长度定位background-position:x y
使用百分比定位background-position: x% y%
说明
x% 往右移
y% 往下移
backgroud-position: 0% 0%; 左边上方
backgroud-position: 0% 50%; 左边中间
backgroud-position: 50% 0%; 中间上方
backgroud-position: 50% 50%; 正中间
backgroud-position:100% 0%; 右边上方
backgroud-position: 0% 100%; 左边下方
backgroud-position: 100% 50%; 右边中间
backgroud-position: 50% 100%; 中间下方
backgroud-position: 100% 100%; 右边下方
以关键字定位
关键字说明
top 上 ( y = 0 )
center 中 ( x = 50, y = 50 )
bottom 下 ( y = 100 )
left 左 ( x= 0 )
Exp:
background-position:center;
图片在指定背景中央X=50% Y=50%位置
background-position: 200px 30px
十六、注释的写法
在Html中:
!-- footer --
content
!-- end footer --
在CSS中:
/* ---------- header ----------------- */
Style
十七、CSS的命名规范
1. id的命名
(1)页面结构
容器: Container
页头:header
内容:content/container
页面主体:main
页尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right center
(2)导航
导航:nav
主导航:mainnav
子导航:subnav
顶导航:topnav
边导航:sidebar
左导航:leftsidebar
右导航:rightsidebar
菜单:menu
子菜单:submenu
标题: title
摘要: summary
(3)功能
标志:logo
广告:banner
登陆:login
登录条:loginbar
注册:regsiter
搜索:search
功能区:shop
标题:title
加入:joinus
状态:status
2. class的命名
(1)颜色:使用颜色的名称或者16进制代码,如
.red { color: red; }
.f60 { color: #f60; }
.ff8600 { color: #ff8600; }
(2)字体大小,直接使用"font+字体大小"作为名称,如
.font12px { font-size: 12px; }
.font9pt {font-size: 9pt; }
(3)对齐样式,使用对齐目标的英文名称,如
.left { float:left; }
.bottom { float:bottom; }
(4)标题栏样式,使用"类别+功能"的方式命名,如
.barnews { }
.barproduct { }
注意事项::
u 一律小写;
u 尽量用英文;
u 不加中杠和下划线;
u 2个组合的单词不用中杠和下划线可以将第二个单词的首字母大写(eg:mainContent);
u 尽量不缩写,除非一看就明白的单词.
3. 主要的站点css文件
主要的 master.css
模块 module.css
基本共用 base.css(root.css)
布局,版面 layout.css
主题 themes.css
专栏 columns.css
文字 font.css
表单 forms.css
补丁 mend.css
打印 print.css
十八、Padding影响宽度问题
如果一组要嵌套的标签之间需要些间距的话,那就留给位于里面的标签的margin属性吧,而不要去定义位
于外面的标签的padding
十九、完美的单象素外框线表格
table{border-collapse:collapse;}
td{border:1px solid #000;}
二十、如果文字过长,则将过长的部分变成省略号显示
style=”width:120px;height:50px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap”
二十一、并不是所有样式都要简写
当样式表前定义了如p{padding:1px2px 3px 4px}时,在后续工程中又增加了一个样式上补白5px,下补白
6px。我们并不一定要写成p.style1{padding:5px 6px 3px 4px}。可以写成p.style1{paddingtop:5px;padding-right:6px;},你可能会感觉这样写还不如原来那样好,但你想没想过,你的那种写法重复定义
了样式,另外你可以不必去找原来的下补白与左补白的值是多少!如果以后前一个样式P变了话,你定义的
p.style1的样式也要变。(此种方法对后期修改样式很重要)
二十二、几个常用到的CSS细节处理上的样式
1)中文字两端对齐:text-align:justify;text-justify:inter-ideograph;
2)固定宽度汉字截断:overflow:hidden;text-overflow:ellipsis;white-space:nowrap;(不让其换行,不过只能
处理文字在一行上的截断,不能处理多行。)(IE5以上)FF不能,它只隐藏。
***万能强制换行:white-space:normal;word-break:break-all
禁止换行:white-space:nowrap
强制换行:word-wrap:break-word; word-break: normal;
.AutoNewline
{
/*word-break: break-all; 方法一必须*/
/*word-wrap:break-word;overflow:hidden; 方法二*/
/*word-wrap:break-word; word-break: normal;方法三 */
word-wrap:break-word; word-break:break-all;}
.NoNewline
{
/*word-break: keep-all; 方法一必须*/
white-space:nowrap;
}
3)固定宽度汉字(词)折行:table-layout:fixed; word-break:break-all;(IE5以上)FF不能。
4)acronym title=”输入要提示的文字”style=”cursor:help;”文字/acronym用鼠标放在前面的文
字上看效果。这个效果在国外的很多网站都可以看到,而国内的少又少。
5)图片设为半透明:.halfalpha { background-color:#000000;filter:Alpha(Opacity=50)}在IE6及IE5测试通
过,FF未通过,这是因为这个样式是IE私有的东西;
6)FLASH透明:选中swf,打开原代码窗口,在/object前输入paramname=”wmode”
value=”transparent” 以上是针对IE的代码。
针对FIREFOX 给embed 标签也增加类似参数wmode=”transparent”
7)在做网页时常用到把鼠标放在图片上会出现图片变亮的效果,可以用图片替换的技巧,也可以用如下的滤
镜:
.pictures img {
filter: alpha(opacity=45); }
.pictures a:hover img {
filter: alpha(opacity=90); }
8)层在浏览器中居中对齐问题
body { text-align: center }
#content { text-align: left; width: 700px;margin: 0 auto }
css编写基本原则正确的是什么?
1、基本样式 的写法
style type="text/css"
h1{
font-family:黑体;
}
/style
直接些标签名进行定义属性,这个也比较常见。但是它的定义通常放在style标签中声明。
2、类class链接样式
定义也通常在style标签中声明
style type="text/css"
.style1{
color:red;
font-size:16px;
}
/style
引用时候直接在标签的属性中使用class="style1" 记住是class属性
h1 /h1
3、id链接样式
style type="text/css"
#style1{
color:blue;
font-size:16px;
}
/style
引用的时候就用标签属性中的id属性 ,要区别于类属性
h1 id="style1"/h1
区别:类class链接样式和id链接样式
类连接样式可以适用于多个对象设置同样的属性中,
而id链接样式只能用于一个对象标签中,其他标签则会失效
4、html选择器:
直接用标签进行声明,跟上面的第一个一样
2)派生选择器:
style type="text/css"
h1 h2{
color:red;
font-size:1em;
font-family:黑体;
}
/style
h1 h2的写法意思是代表着该css样式只能之h1h2 /h2/h1同时出现,且是嵌套使用的时候才能生效
3)id选择器
id选择器的作用是通过id选择器将css样式作用到页面的对象上。写法:
style type="text/css"
#text p{
font-size:1em;
}
/style
将该样式绑定到html上,就要这样写
h1 id=#"text"这个是不要p的写法
要p的写法
表明该对象只能作用在text对象上的所有p标签中
4)class选择器
style type="text/css"
.fancy{
color:red;
background:#666;
}
/style
使用的时候也是
h1/h1
也可以像上面的一样用派生选择器
style type="text/css"
.fancy td{
color:red;
background:#666;
}
/style
说明生效只能在td中
5)分组选择器
h1{color:bule;}
#text{color:bule;}
.play{color:bule;}
这种写法太繁琐了
我们可以使用
h1,#text,.paly{
color:bule;}
这样来定义
6)伪类和伪类选择器
用关键字:lang来定义
html
head
style type="text/css"
q:lang(smile){
quotes:"∞"
}
/style
/head
body
好吧,展示一下
p请看q祝你愉快/q/p
/body
/html
css样式遵循什么原则
“css的样式规则是:由选择器和声明块两个基本部分组成的。选择器决定为哪些元素应用样式;声明块定义相应的样式,它包含在一对花括号内,有一条或多条声明组成,而每一条声明则由一个属性和一个值组成,中间用冒号隔开
HTML网页怎么使用CSS样式?
在制作一个网页的时候,Css样式的添加一共有四种方式,一起来看看这四种方式:
一、使用STYLE属性: 将STYLE属性直接加在个别的元件标签里。
元件(标签) STYLE="性质(属性)1: 设定值1; 性质(属性)2: 设定值2; ...}
例如:
TD STYLE="COLOR:BLUE; font-size:9pt; font-family:"标楷体"; line-height:150%
这种用法的优点 是可灵巧应用样式於各标签中,但是缺点则是没有整篇文件的『统一性』。
二、使用STYLE标签: 将样式规则写在STYLE.../STYLE标签之中。
通常是将整个的 STYLE.../STYLE结构写在网页的HEAD /HEAD部份之中。这种用法的优点就是在於整篇文件的统一性,只要是有声明的的元件即会套用该样式规则。缺点就是在个别元件的灵活度不足。
三、使用 LINK标签: 将样式规则写在.css的样式档案中,再以LINK标签引入。
假设我们把样式规则存成一个example.css的档案,我们只要在网页中加入
LINK REL=STYLESHEET TYPE="text/css" HREF="example.css"
即可套用该样式档案中所制定好的样式了。 通常是将LINK标签写在网页的head/head部份之中。这种用法的优点就是在於可以把要套用相同样式规则的数篇文件都指定到同一个样式档案即可。缺点也是在个别文件或元件的灵活度不足。
四、使用@import引入: 跟LINK用法很像,但必 放在STYLE.../STYLE 中。
要注意的是,行末的分号是绝对不可少的!这种方式也可以把
说一下css规范?
一、Css书写顺序:
1.位置属性(position, top, right, z-index, display, float等)
2.大小(width, height, padding, margin)
3.文字系列(font, line-height, letter-spacing, color- text-align等)
4.背景(background, border等)
5.其他(animation, transition等)
二、Css语法:
命名一般为小写英文字母。
为了代码的易读性,在每个声明块的左花括号前添加一个空格。
每条声明语句的 : 后应该插入一个空格。
所有声明语句都应当以分号结尾。最后一条声明语句后面的分号是可选的,但是,如果省略这个分号,你的代码可能更易出错。
对于属性值或颜色参数,省略小于 1 的小数前面的 0 (例如,.5 代替 0.5;-.5px 代替 -0.5px)。
十六进制值应该全部小写,例如,#fff。
尽量使用简写形式的十六进制值,例如,用 #fff 代替 #ffffff。
避免为 0 值指定单位,例如,用 margin: 0; 代替 margin: 0px;。
Css常用的一些命名:
可参考:CSS 常用命名 - 彼岸时光 - 博客园。
三、Css的引入:
Css的引入一般有两种,link和@import,一般建议使用link引入。这样可以避免考虑@import的语法规则和注意事项,避免产生资源文件下载顺序混乱和http请求过多的烦恼。
四、Css的命名规范(BEM,OOCSS):
什么是BEM:BEM的意思就是块(block)、元素(element)、修饰符(modifier),是由Yandex团队提出的一种前端命名方法论。这种巧妙的命名方法让你的CSS类对其他开发者来说更加透明而且更有意义。
命名约定如下:
.block{} // 块即是通常所说的 Web 应用开发中的组件或模块。每个块在逻辑上和功能上都是相互独立的。
.block__element{} // 元素是块中的组成部分。元素不能离开块来使用。BEM 不推荐在元素中嵌套其他元素。
.block--modifier{} // 修饰符用来定义块或元素的外观和行为。同样的块在应用不同的修饰符之后,会有不同的外观。
优点:
BEM 的优点在于所产生的 CSS 类名都只使用一个类别选择器,可以避免传统做法中由于多个类别选择器嵌套带来的复杂的属性级联问题。在 BEM 命名规则中,所有的 CSS 样式规则都只用一个类别选择器。因此所有样式规则的特异性(specificity)都是相同的,也就不存在复杂的优先级问题。这可以简化属性值的层叠规则。代码清单中的命名规则的好处在于每个 CSS 类名都很简单明了,而且类名的层次关系可以与 DOM 节点的树型结构相对应。
缺点:
这样类名过于长,且复杂。
什么是OOCSS(面向对象CSS):
OOCSS 表示的是面向对象 CSS(Object Oriented CSS),是一种把面向对象方法学应用到 CSS 代码组织和管理中的实践。 OOCSS最关键的一点就是:提高他的灵活性和可重用性。这个也是OOCSS最重要的一点。OOCSS主张是通过在基础组件中添加更多的类,从而扩展基础组件的CSS规则,从而使CSS有更好的扩展性。
OOCSS的优点:
减少CSS代码。
具有清洁的HTML标记,有语义的类名,逻辑性强的层次关系。
语义标记,有助于SEO。
更好的页面优化,更快的加载时间(因为有很多组件重用)。
可扩展的标记和CSS样式,有更多的组件可以放到库中,而不影响其他的组件。
能轻松构造新的页面布局,或制作新的页面风格。
OOCSS的缺点:
OOCSS适合真正的大型网站开发,因为大型网站用到的可重用性组件特别的多,如果运用在小型项目中可能见不到什么成效。所以用不用OOCSS应该根据你的项目来决定。如果没用巧妙的使用,创建组件可能对于你来说是一堆没用的东西,成为一烂摊子,给你的维护带来意想不到的杯具,说不定还是个维护的噩梦。
欢迎到优就业来了解
css的三种样式中哪种样式的优先级最高
css样式采取的就近样式原则。
行内样式div style=""/div优先级最高,没有行内样式那么会回在页答面找style/style内嵌样式。
名称CSS中的“层叠(cascading)”表示样式单规则应用于HTML文档元素的方式。具体地说,CSS样式单中的样式形成一个层次结构,更具体的样式覆盖通用样式。样式规则的优先级由CSS根据这个层次结构决定,从而实现级联效果。
扩展资料:
易于使用和修改:
CSS可以将样式定义在HTML元素的style属性中,也可以将其定义在HTML文档的header部分,也可以将样式声明在一个专门的CSS文件中,以供HTML页面引用。总之,CSS样式表可以将所有的样式声明统一存放,进行统一管理。
另外,可以将相同样式的元素进行归类,使用同一个样式进行定义,也可以将某个样式应用到所有同名的HTML标签中。
参考资料来源:百度百科-CSS
网站标题:使用css样式的基本原则,常用css样式
当前路径:http://cdiso.cn/article/dsisjsg.html