优秀程序员web前端开发测验css部分Web前端开发测验CSS部分问答 问:CSS属性是否区分大小写?1.
ul{
2.
MaRGin:10px;
3.
}
答:无区别。 HTML和CSS不区分大小写,但为了更好的可读性和团队合作,它们通常是小写的,而元素名称和属性在XHTML中必须小写。 Q:设置margin-top和margin-bottom对行内元素有效吗? 答:不行。(答案是有效,但我个人认为是错误的。) html中的元素分为可替换元素和不可替换元素。 替换元素是用作其他内容的占位符的元素。最典型的就是img,它只是指向一个图片文件。而且大部分表单元素也被替换掉了,比如input等等。非替换元素是其内容包含在文档中的元素。例如,如果段落的文本内容放置在元素本身内,则段落是非替换元素。 讨论margin-top和margin-bottom是否作用于行内元素,需要分别讨论行内替换元素和行内非替换元素。 首先要明确的是,内联元素可以应用外边距,这在规范中是允许的,但是由于内联非替换元素应用外边距对行高没有影响。由于边距实际上是透明的。所以声明margin-top和margin-bottom没有视觉效果。这样做的原因是行内非替换元素的边距不会改变元素的行高。行内不可替换元素的左右外边距不是这样,有影响。 而为替换元素设置的边距会影响行高,可能会增加或减少行高,具体取决于顶部和底部边距的值。内联替换元素的左右边距与非替换元素的左右边距工作相同。来看demo: 问:给行内元素设置padding-top和padding-bottom会不会增加高度?(原问题是在内联元素上设置padding-top和padding-bottom会增加它的尺寸吗?) 答:答案是否定的。上面的问题比较纠结,不太明白这里的维度是什么意思?搁置一边,我们来分析一下。对于行内元素,设置左右内边距,左右内边距可见。并设置上下内边距,设置背景色后,可以看到内边距区域增加了。对于行中的非替换元素,不会影响行高,不会拉伸父元素。对于替换元素,父元素被拉伸。看一下demo加深理解: Q:设置p的font-size:10rem,当用户重置或拖动浏览器窗口时,文字大小是否也会改变? 答:不开会。 rem是基于html根元素中font-size大小的相对度量单位,文本的大小不会随着窗口的大小而改变。 Q:伪类选择器:checked会作用于输入类型,如radio或checkbox,不会作用于option。 答:没有。 伪类选择器checked的定义很明显: :checkedCSS伪类选择器代表任意radio()、checkbox()或option(