问题与小技巧汇总,包括但不限于:HTML5、CSS、React、TypeScript、vue
text-align:center;失效
text-align属性是针对 内联元素居中得属性设置,如果使用在块元素(display:block)上是无效的。
对于块状
元素使用margin:0 auto;
来控制居中。
解决办法:
将元素设置为内联元素。
display:inline-block;
设置某个子元素样式
CSS3 :nth-child()
选择器
:nth-child(n)
选择器匹配属于其父元素的第 N
个子元素,不论元素的类型。
规定属于p的父元素的第二个子元素的背景色:
p:nth-child(2)
{
background:#ff0000;
}
隐藏元素
Q:要让某个元素“看不见”,可以设置哪些CSS属性?他们又有什么不同?什么情况下应该选用什么属性?
1.占据空间,可以点击:opacity: 0; filter:Alpha(opacity=0);
2.占据空间,无法点击:visibility:hidden;
3.不占空间,无法点击:display:none;
4.不占空间: position: absolute;
其中,让4与1或者2(即:占据空间的)组合,可以使1,2不占空间(是否可点击不影响)
table里<a></a>
标签自动换行
a标签包含在table标签里,无法自动换行,会把其他单元格挤得很窄。
为了让a标签所在的单元格也能按照指定的宽度显示,需要给table标签添加样式,来强制文本换行。
添加如下样式:
table{table-layout: fixed;}
td{word-break: break-all; word-wrap:break-word;}
居中显示
1、margin: auto 撑满居中
布局宽高自适应,但是想基于父布局居中显示。用margin: auto;
position: absolute;
top: 0;
margin: auto;
bottom: 0;
left: 0;
right: 0;
或
position: fixed;
margin: auto;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: -1;
2、偏移居中
可以使用偏移让布局居中
top: 50%;
left: 50%;
transform: translate3d(-50%, -50%, 0);
隐藏scrollbar
.father
是你设置的overflow:auto
的class
.father::-webkit-scrollbar{
display: none;
}
暂无评论