当前位置: 首页 > news >正文

CSS实用技巧

浮动元素不换行

做豆瓣的时候模仿豆瓣的正在热映的列表做的一个样式,效果及代码如下
clipboard.png

.item-lists {
    overflow-x: auto;
    white-space: nowrap;
    font-size: 0;
    padding: 15px 0 30px 0; /*no*/
    /*去掉滚动条*/
    &::-webkit-scrollbar {
       display: none;
    }
        .item {
            display: inline-block;
            width: 100px; /*no*/
            margin-left: 40px;
            vertical-align: top;
            &:nth-of-type(1) {
              margin-left: 0;
        }
}  

最主要的就是要在在父元素设置white-space: nowrap;来保证子元素强制不换行

设置子元素与父元素等大小

之前我们写这样的了能就是为子元素设置width:100%;height:100%;,其实也可以使用如下的写法

.parent{
  position:relative;
  width:200px;
  height:200px;
  .child{
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background-color: red;  
  }
}
/*也就是说子元素不设置高度和宽度,通过absolute的属性将子元素‘撑开’到父元素的大小*/
/*如果我们设置了如left:20px; right:20px;那么就相当于设置父元素padding:0 20px;子元素设置width:100%;*/

元素等大小左右浮动

clipboard.png

之前如果我们想要实现一个这样的效果,可能会使用浮动,现在可以考虑使用如下的写法

ul{
    width: 100%;
    padding:0 18px;/*no*/
    box-sizing: border-box;
    margin-top: 30px;/*no*/
    >li{
        width: 50%;
        padding: 3px;/*no*/
        float: left;
        box-sizing: border-box;
        text-align: center;
        font-size: 15px;/*no*/
        background-color: #ffffff;
        a{
          display: block;
          padding: 12px 0;/*no*/
          width: 100%;
          height: 100%;
          background-color: #f6f6f6;
          color: #333;
        }
    }
}

元素向上/向左拉伸

CSS默认情况下盒子的长度变化是由上向下的方向进行变化,宽度变化是由左向右,有时候需要实现盒子由底层弹出,或者盒子由右侧向左弹出的效果,可以使用如下代码,由右向左同理

.test {
    position: absolute;
    bottom: 0;
    width: 100px;
    height: 10px;
    background-color: red;
}

测试效果

  $(".test").animate({"height": "100px"}, 2000)

相关文章:

  • SQL笔记
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 剑指offer-数值的整数方
  • 阿里研究院入选中国企业智库系统影响力榜
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 开工的欲望 | AI Studio悄然上线新功能,用你的模型生成在线预测服务
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 集群概念
  • 周末时间学习Linux
  • Brief introduction of how to 'Call, Apply and Bind'
  • CSS样式:覆盖规则
  • 猴子数据域名防封接口降低小说被封的风险
  • hadoop搭建之hive安装
  • 构造函数(constructor)与原型链(prototype)关系
  • css3省略……
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • js 实现textarea输入字数提示
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • Vue 重置组件到初始状态
  • Vue.js源码(2):初探List Rendering
  • vue2.0项目引入element-ui
  • 编写高质量JavaScript代码之并发
  • 对话 CTO〡听神策数据 CTO 曹犟描绘数据分析行业的无限可能
  • 服务器之间,相同帐号,实现免密钥登录
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 聊聊directory traversal attack
  • 前端性能优化——回流与重绘
  • 区块链技术特点之去中心化特性
  • 深度学习入门:10门免费线上课程推荐
  • 网络应用优化——时延与带宽
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • elasticsearch-head插件安装
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • 如何正确理解,内页权重高于首页?
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (js)循环条件满足时终止循环
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • .net 后台导出excel ,word
  • .NET 中的轻量级线程安全
  • .net快速开发框架源码分享
  • .Net组件程序设计之线程、并发管理(一)
  • @RequestBody与@ResponseBody的使用
  • [ vulhub漏洞复现篇 ] Hadoop-yarn-RPC 未授权访问漏洞复现
  • [2016.7 day.5] T2
  • [2017][note]基于空间交叉相位调制的两个连续波在few layer铋Bi中的全光switch——
  • [AI]文心一言爆火的同时,ChatGPT带来了这么多的开源项目你了解吗
  • [AIGC] Kong:一个强大的 API 网关和服务平台
  • [Android]常见的数据传递方式
  • [ASP.NET 控件实作 Day7] 设定工具箱的控件图标
  • [C语言]——函数递归