a标签css及前端笔记

a标签中具有开始标签和结束标签;

a标签中可以写行内元素、行内块元素、块元素;

a标签中如果包裹一张图片(图片属于替换元素,具有行内块元素特点),此时,整个图片可点击,但是a标签的高度仍然相当于是行内元素;但是如果把图片的display改为block,此时,a标签就与图片等高(消除了底下的空隙),并且底部对齐,并且,此时,a元素就成了块元素;

行内元素中,一般只有a元素中,才会去嵌套块元素;

一个div中包含一个a标签,这个a标签又包含一个div,里面这个div如果设置高度和宽度为百分比,相对的是a标签外面的这个div的宽高,好像就略过了a标签一样;

一个div中包含一个a标签,div有指定大小,然后让a标签水平居中,使用text-align:center,然后a标签可以使用margin-left或margin-right或padding-left或padding-right移动a标签的位置,垂直方向上移不了,只能水平方向。


修改鼠标的样式为图片
body {
    cursor: url(./default.cur),default;
}

一个span中放了一个img标签,那么这个img标签如果写了width和height都是百分比,它不会相对于这个span,而是相对于离自己最近的父级非行内元素(块元素,或者行内块元素)的大小,因此,可以考虑将这个span改为行内块元素
一个box的display为inline-block,里面包含div1、div2、div3这3个div,它们的宽度不相同,那么box的宽度为div1、div2、div3中宽度最宽的那个。

处理行内块元素的空白字符折叠(行内块元素的结束标签和另外一个行内块元素结束标签在源码中没有紧紧的挨着,默认情况下,中间的多个空白字符会被视为一个空白字符)

.list {
    font-size: 0;
    letter-spacing: -.31em;
}

块级元素中使用white-space:nowrap 可以让块级元素内部的行内块元素不换行,即让这些行内块元素同一行显示,哪怕超出父元素宽度


两个行内块元素,当行内块元素无法在一行同时显示时,最后面的行内块元素将会换行,换行之后,位于上面的行内块元素,与位于第二行的行内块元素之间也有空白空间,可以通过line-height:0去掉
.container {
    width: 300px;
    line-height: 0;
    letter-spacing: -0.31em;
}

.box1 {
    height: 100px;
    width: 100px;
    background-color: #bfa;
    display: inline-block;
}

当使用text-align:justify时候,会让元素中的所有行内元素或行内块元素均匀分布,但是最后一行不会均匀分布,可以在最后加上伪元素解决
.item-list {
    text-align: justify;
}

.item-list::after {
	content: '';
    display: inline-block;
    width: 100%;
}

当行内块元素中嵌入块级元素时(我们知道块级元素是独占一行,而行内块元素默认宽度和高度都是由内容撑开),里面的块级元素未显式设置margin-right时,行内块元素是不会管margin-right的。
图片和文字居中对齐方法:设置图片长和宽的像素大小后,再设置文字的line-height与图片的高度相等,再设置图片的vertical-align:top
一个没有定位的容器,包含一个没有定位的元素,容器使用了overflow:hidden,这样的话,在容器中的元素超出部分将会被隐藏掉。但是此时如果在容器中的元素使用了绝对定位,那么超出部分仍然会显示出来(虽然对布局没有影响),这时,可以给容器加上相对定位,这样在容器中的元素超出部分将会被隐藏。
img标签的src属性可以直接写svg文件的路径
当在一个div中放入一个input元素时候,可以给这个input元素添加vertical-align:top顶部对齐,防止它向下偏移;此时放大视图,该input元素的四周有1像素的透明带,可看到下面的元素,这个可以尝试通过设置outline:1px solid #fff解决,不然强迫症看起来有点不舒服。
当div容器的line-height高于容器的高度时,文字的位置会处于偏下的位置,但是对容器外的布局没有影响
H5视频video标签宽高自适应代码(设置视频的宽高) 一般情况下:\ 但是有的时候发现设置了视频的高度却并没有发生变化,我们可以设置其父元素的宽高,让video填充满父元素。只要给video标签加上style="width= 100%; height=100%; object-fit: fill"即可(img标签也是这样做的,给img的style添加width和height之后,再使用object-fit)。 `\`
object-fit语法 object-fit:fill | contain | cover | none | scale-down

object-fit取值说明
object-fit主要适合于替换元素,比如: