用 Javascript 将id="a2" 的div插入到 span里面,且宽度等于span的宽度。
span不能定义ID ,只能标签,要怎么写啊,
<html>
<body>
<span><span>
<div id="a2"></div>
</body>
</html>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title> 页面名称 </title>
<style type="text/css">
#a2 {
background-color: #d00;
width: 100%;
height: 20px;
}
span {
display: inline-block;
width: 300px;
}
</style>
</head>
<body>
<span></span>
<div id="a2"></div>
<script type="text/javascript">
var span = document.getElementsByTagName("span")[0];
var a2 = document.getElementById("a2");
span.appendChild(a2);
</script>
</body>
</html>
jquery 用法 是这样的
$("body > span").html("
括号里是
$("body > span").html("
<div id='a2'></div>
");
可以通过document.getElementsByTagName("span");获取span标签对象,然后再创建div标签,添加进目标span中。
var parent = document.getElementsByTagName("span");
var div = document.createElement("div");
//设置 div 属性,如 id
div.setAttribute("id", "a2");
div.innerHTML = "动态添加div中的内容";
parent.appendChild(div);
这样就可以了!
试试在style里加上这个条件:min-width: 100%;max-width: 100%;
so easy ,不过原则上span是不应该放div的,虽然不会报错,具体看w3cschool规范
代码,随便写的,可能有语法错误,具体看jquery文档:
var $div = $("#a2");
$div.appendTo($("span")).width($div.parent().width())
span 标签不是默认display=inline的么,如果不改的话,它是根据内容来撑的
利用选其找到span,如var span = document.getElementsByTagName("span")[0],然后就可以加进去了,用append或者html,然后利用字符串拼接拼进去,但是原则上span为非块级元素,是不能容纳块级元素的,但是要硬塞的话,也不会报错,尽量还是按规范来。