我为div元素设置了边距,但是body元素也获得了该边距。
考虑以下代码:
<!-- HTML -->
<body>
<div>
</div>
</body>
<!-- CSS -->
<style>
html,body {
height:100%;
margin:0;
padding:0;
outline:1px solid blue;
}
div {
margin:20px;
outline:1px solid red;
}
</style>
Run Code Online (Sandbox Code Playgroud)
这是结果和问题:

到目前为止,我已经通过向border:1px solid transparent;body元素添加属性解决了该问题。因为滚动条由于1px边框而出现,所以这破坏了100%的高度。为什么会这样?
可能的解决方案(感谢您的帮助):添加a padding-top:1px和a margin-top:-1px,这样滚动条不会破坏100%的高度,并且可以避免边距塌陷。
我想要一个模式来创建一个"is_id()"函数来验证mysql查询之前的用户输入.模式大多数只包含数字,我的问题是避免浮点数:
function is_id($id) {
$pattern = "/^[0-9]+/";
if(preg_match($pattern,$id)) {
echo "ok";
} else {
echo "error";
}
}
is_id(0) // error
is_id(-5) // error
is_id(-5.5) // error
is_id(1.5) // ok <-- THIS IS THE PROBLEM
is_id(10) // ok
is_id("5") // ok
is_id("string") // error
Run Code Online (Sandbox Code Playgroud)