css实用技巧——absolute绝对布局的妙用:表单校验提示信息,制作角标

简介: css实用技巧——absolute绝对布局的妙用:表单校验提示信息,制作角标

表单校验提示信息

实现思路要点:

  • label和input对齐,需给label添加样式  vertical-align: middle;
  • 为避免动态显示隐藏的的必填 * 和校验提示信息影响页面布局,都使用absolute进行布局,通过margin调整位置

技术要点:

  • absolute布局的元素都会变成块级元素,可以设置margin
  • 只添加absolute,不设置left、right、top、bottom属性时,元素会悬浮在原来的位置,并不会飘到页面的左上角。

<template>
    <div style="padding: 20px">
        <div class="formItem">
            <label class="formLabel"><span class="requireMark">*</span>邮 箱</label>
            <input>
            <span class="warnTips">邮箱格式不正确</span>
        </div>
        <div class="formItem">
            <label class="formLabel"><span class="requireMark">*</span>手机号码</label>
            <input>
            <span class="warnTips">手机号码格式不正确</span>
        </div>
    </div>
</template>
<style scoped>
    .formItem {
        width: 300px;
        margin: 0px auto 10px auto;
    }
 
    .formLabel {
        width: 80px;
        display: inline-block;
        vertical-align: middle;
    }
 
    .warnTips {
        position: absolute;
        margin: 4px 0 0 10px;
        font-size: 12px;
        color: orange;
    }
 
    .requireMark {
        position: absolute;
        margin: 4px 0 0 -10px;
        color: red;
    }
</style>

制作角标

<template>
    <div style="padding: 20px">
        <p><span>右上角角标</span><i class="myIcon rightTop"></i></p>
    </div>
</template>
<style scoped>
    .myIcon {
        background: url("https://demo.cssworld.cn/images/6/new.png") no-repeat center;
        width: 12px;
        height: 13px;
    }
 
    .rightTop {
        position: absolute;
        margin: -6px 0 0 2px;
    }
</style>

带输入建议的输入框

<template>
    <div style="padding: 20px">
        <div class="search-box">
            <input class="search-input" placeholder="搜索">
            <i class="search-btn"></i>
            <div class="search-suggest">
                <p>搜索建议1</p>
                <p>搜索建议2</p>
                <p>搜索建议3</p>
                <p>搜索建议4</p>
                <p>搜索建议5</p>
            </div>
        </div>
    </div>
</template>
<style scoped>
    /* 搜索按钮的无依赖绝对定位 */
    .search-btn {
        width: 24px;
        height: 19px;
        background: url(https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3241362042,118478454&fm=26&gp=0.jpg) no-repeat center;
        background-size: 100% 100%;
        position: absolute;
        margin: 3px 0 0 -26px;
    }
 
    /* 搜索列表的无依赖绝对定位 */
    .search-suggest {
        position: absolute;
        background: white;
        border: 1px solid #e6e8e9;
        width: 142px;
        padding:0 10px;
        display: none;
    }
 
    /*当输入框获得焦点时,显示搜索下拉列表*/
    .search-input:focus ~ .search-suggest {
        display: block;
    }
</style>
目录
相关文章
|
8天前
|
前端开发 容器
css布局-弹性布局学习笔记
这篇文章是关于CSS弹性布局的学习笔记,详细介绍了flex容器和元素的相关属性,包括flex-direction、flex-wrap、flex-flow、justify-content、align-items、align-content以及order、flex-grow、flex-shrink、flex-basis、flex和align-self等,解释了这些属性在弹性盒子布局中的作用和用法。
|
2月前
|
前端开发
HTML+CSS基础知识(6)背景的设置、表格的设计、表单的设计和框架集
这篇文章详细介绍了如何在HTML和CSS中设置背景、设计表格、创建表单以及使用框架集,并通过代码示例和测试结果展示了具体的实现方法和效果。
HTML+CSS基础知识(6)背景的设置、表格的设计、表单的设计和框架集
|
8天前
|
JavaScript 前端开发
网页前端课程设计-【模仿】香港中文大学官网,轮播图及div+css布局,js的dom操作
这篇文章介绍了如何模仿香港中文大学官网进行网页前端课程设计,包括使用div+css布局、js的DOM操作以及实现轮播图等技术细节。
|
2月前
|
前端开发 安全 容器
CSS如何优雅实现卡片多行排列布局?
【8月更文挑战第24天】CSS如何优雅实现卡片多行排列布局?
42 3
|
2月前
|
前端开发 开发者 容器
探索现代Web开发中的CSS Grid布局技术
【8月更文挑战第29天】在数字时代的浪潮中,网页设计不断进化以适应日新月异的用户需求。CSS Grid布局技术作为一项革新性的前端工具,为设计师和开发者提供了前所未有的布局能力。本文旨在通过深入浅出的方式介绍CSS Grid的核心概念、基本用法以及在实际项目中的应用,帮助读者快速掌握这一强大的网页布局工具。
41 3
|
2月前
|
前端开发 开发者 容器
【Web布局的革命】探索CSS Grid栅格系统,打造未来网页设计!
【8月更文挑战第25天】在网页设计领域,布局至关重要。传统的布局方法难以满足复杂需求,CSS Grid 栅格系统因此诞生。它是一种二维布局模式,能直接控制行和列,简化复杂网格的设计。通过定义 `display: grid;` 创建网格容器,并利用 `grid-template-columns` 和 `grid-template-rows` 设置行列尺寸,轻松实现响应式布局。此外,CSS Grid 支持高级功能,如网格区域划分和对齐设置,极大提升了布局的灵活性和创意空间。随着浏览器兼容性的增强,CSS Grid 必将成为未来网页设计的关键技术之一。
52 1
|
2月前
|
前端开发
酷炫表单,触感未来:HTML与CSS动画的创新应用!
酷炫表单,触感未来:HTML与CSS动画的创新应用!
|
2月前
|
前端开发 JavaScript Serverless
揭秘CSS布局神器:vw/vh、rem、%与px大PK,掌握它们,让你的网页设计秒变高大上,面试难题迎刃而解!
【8月更文挑战第4天】在Web开发中,合理选择CSS单位对响应式布局至关重要。本文探索viewport单位(vw/vh)、rem、百分比(%)及像素(px)的基础知识与应用场景。通过代码示例,展示如何运用这些单位实现全屏布局、尺寸比例调整、灵活的元素大小及固定尺寸。最后,模拟面试题,介绍如何仅用CSS实现一个元素的高度为其宽度两倍且响应视口变化的方法。
166 8
|
2月前
|
移动开发 前端开发 UED
卡片翻转,故事展开:HTML+CSS动画让信息传递更生动!(含源码)
卡片翻转,故事展开:HTML+CSS动画让信息传递更生动!(含源码)
|
2月前
|
前端开发
CSS Grid 布局:span 关键字
CSS Grid 布局:span 关键字
44 0