前端小结2-CSS和HTML

本文是对CSS和HTML学习的总结,探讨了如何用纯CSS创建向上箭头、line-height与高度的关系、文本对齐、隐藏元素等实际应用。还分析了商业网站logo的处理、表单元素样式、以及小米网站页面放大时的布局问题。同时,介绍了CSS选择器分组和元素隐藏方法,强调在多页网站中保持样式一致性的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前将CSS/HTML教程学完了一遍,现在边学习JS,边对之前学习的CSS/HTML进行一些总结。此篇文章主要是小米网站首页相关的

1、用纯CSS方法生成向上的白色小三角形

/* 用before或者after都可以 */
.app::after{
    /* before和after伪元素选择器,必须结合content属性使用 */
    content: '';
    /* 
    设置成块元素才能设置宽、高
    其实个人觉得不设置成块元素,不设置宽、高,也可生成向上的白色小三角形,即:
    display: block; 
    width: 0;
    height: 0;
    这三行代码不是必须的
    */
    display: block; 
    width: 0;
    height: 0;
    border: 8px solid transparent;
    border-top: none;
    border-bottom-color: #fff;
}

2、设置了line-height的块元素,可以不设置height,因为当该块元素中有内容时,line-height会撑起该块元素height

3、text-align:center 设置文本水平对齐,只对行内元素生效,对行内块元素没有作用,其中img元素就属于行内块元素。

4、商业网站的logo:一般来说商业网站的logo的都比较重要,放在h1中,一般会包含文字对此对此网站进行描述,如小米官网的logo说明文字就是“小米官网”,方便搜索引擎检索,但是这个文字说明在网页中是不展示出来的,因此要对此文字说明进行隐藏,对应代码如下:

text-indent: -9999px;

5、表单form是块元素,其中input、button等都属于行内块元素,如果这两个元素之间有换行,则这两个元素之间会有空隙,可以给input和button都设置浮动,来清除二者之间的空隙。

6、input、button等元素都有默认的自带样式,如外边距、内边距、、轮廓线等等,为这些元素设置样式的时候,要注意清除其默认样式。

7、像在input框中输入文字,input边框颜色要改变的这种情况,属于获取焦点的情况,具体代码如下:

/* 点进去,这种情况属于获取焦点的情况 */
.search-ipt:focus,
.search-ipt:focus+.search-btn{
    border-color:#ff6700;
}

8、对input元素设置的font-size设置的是input框中输入文字的大小

9、当小米网站页面放大得比较大的时候,小米网站右侧边栏位置设置问题,该问题具体如下图所示:
在这里插入图片描述
使图中右侧黄色导航条始终在视口中 垂直方向上:上下居中,水平方向上:如图中所示。位置不随网页放大缩小而改变。
具体代码如下:

.back-top{
    width: 26px;
    height: 206px;
    background-color: orange;
    position: fixed;
    top: 0;
    bottom: 0;
    /* 
    关键在于将right设置为视口宽度的50%,则此时元素右边框到视口右边界的距离是视口宽度的50%
    right值可以不是50%,只要是百分比即可,只是50%比较好计算
     */
    right: 50%;
    margin-top: auto;
    margin-bottom: auto;
    margin-right: -639px;
}
/* 
left(auto)+margin-left(0)+width+margin-right(0)+right(auto)=包含块的宽度,其中left和margin-left影响的是自身的定位,right和margin-right影响的是其它元素的定位
*/

10、注意点:如果多个元素设置的样式一样,则注意使用选择器分组设置样式,这样会使得代码更简洁。

11、一个网站往往会有多个网页,这个时候设置网页样式和进行网页布局时,也要兼顾相同内容在其他网页中的样式。

12、隐藏一个元素的几种方式:

12.1 元素不占据页面位置

display:none;

12.2 元素占据页面位置

visibility:hidden;

12.3 元素占据页面位置

/*opacity设置元素不透明级别,0表示完全透明,1表示完全不透明*/
opacity:0;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值