HTML,CSS里面关于 id,class,name 属性的区别和用法

html-css0164

HTML,CSS里面关于 id,class,name 属性的区别和用法,第1张

1、id: id是设置标签的标识。用于定义一个元素的独特的样式。在CSS样式定义的时候 以“#”来开头命名id名称。

用法:若一个标签的id="myid",那么使用它的时候通过”$("#myid")“来获取当前标签或使用“#myid{}”来定义CSS样式。

2、class:根据用户定义的标准对一个或多个元素进行标记和定义,一个标签可以有多个class,例如class="myclass1 myclass2",当前标签就有两个class,分别为myclass1和myclass2。

用法:若一个标签有一个class="myclass",那么获取这个标签可以使用$(".myclass"),同时使用”.myclass{}“来定义CSS样式。

3、name:从名字可以知道这是用于定义一个标签的名字的属性,name可用于数据获取,常用于表单数据的获取。

用法:若一个输入框的name="myname" ,常用request.getparameter("myname")来获取当前输入框的值。

div{CSS的内容}

这样就OK了 整个网页中所有的DIV就都是这个CSS定义的了

也可以用class或者是id来限制某一个或几个div的样式 比如

.divname{CSS的内容}

引用时就要用到

<div class=divname>其他内容其他内容其他内容</div>

或者是

#divname{CSS的内容}

<div id=divname>其他内容其他内容其他内容</div>

公用处理:你先测出你的这个width:100px的DIV一共可以放下多少个字符。这里假设为“LEN”以下相关的也用此代替。

公用的CSS处理:设置DIV的定宽100px,再加个overflow:hidden即溢出部分隐藏。

解法1(后台代码处理):你先对你要输出的内容做strlen()的处理,看你要输出的内容是不是超过了LEN,要是没有超过就给全输出,要是超了,就用substr()函数去适当的截取一个长度,再将它跟你的“......”连超来输出即可。

解法2(JS来做判断):这个原理也跟解法1一样,只不过,你用来做判断的语言换了一种以及判断的处理放在的客户端来做。

方法:

首先,你得给你类似的DIV加个相同的name值,如name="linkDiv"。

其次,你可以在你的HTML页全输出后对调用一个JS函数,来对name="linkDiv"的DIV对其内容做一个处理。注意我这里要求你的更多放在name="linkDiv"之外,原因见后面。

JS函数可以这样写:

function formatStr(){

var i

var LEN= 30//这个值是上面讲到的LEN的值,我这里假设是30

var strLen = 0

var str = ''

var strDiv = document.getElementsByName("linkDiv")

for(i = 0i <strDiv.lengthi++){

strLen = strDiv[i].innerHTML.length

if(strLen >LEN){

str = strDiv[i].innerHTML.substr(0,LEN-6)

str += "......"//上面的 LEN - 6 是来自这里。

}

strDiv[i].innerHTML = str

}

}

以下附上我写的一个测试:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>测试一个SUBSTR</title>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<meta http-equiv="Content-Language" content="zh-CN" />

<meta name="Keywords" content="" />

<meta name="Description" content="" />

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

<style type="text/css">

#wrap{

width:950px

height:auto

margin:0px auto

}

.linkDiv{

width:100px

height:auto

overflow:hidden

border:1px dotted #fff000

}

</style>

<script language="javascript">

function formatStr(){

var i

var LEN= 30//这个值是上面讲到的LEN的值,我这里假设是30

var strLen = 0

var str = ''

var strDiv = document.getElementsByName("linkDiv")

for(i = 0i <strDiv.lengthi++){

strLen = strDiv[i].innerHTML.length

if(strLen >LEN){

str = strDiv[i].innerHTML.substr(0,LEN-6)

str += "......"//上面的 LEN - 6 是来自这里。

}

strDiv[i].innerHTML = str

}

}

</script>

</head>

<body>

<div id="wrap">

<div name="linkDiv" class="linkDiv">//这个值是上面讲到的LEN的值,我这里假设是30//这个值是上面讲到的LEN的值,我这里假设是30</div>

<div name="linkDiv" class="linkDiv">//这个值是上面讲到的LEN的值,我这里假设是30//这个值是上面讲到的LEN的值,我这里假设是30</div>

<div name="linkDiv" class="linkDiv">//这个值是上面讲到的LEN的值,我这里假设是30//这个值是上面讲到的LEN的值,我这里假设是30</div>

</div>

<script language="javascript">formatStr()</script>

</body>

</html>

测试通过。