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>
目录
相关文章
|
3月前
|
前端开发 算法 Java
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
(CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
158 1
|
3月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
Flex 布局 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C 提出了一种新的方案----Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。 一、Flex 布局是什么? Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。
321 1
|
7月前
|
前端开发
用 CSS Grid 轻松构建复杂布局
用 CSS Grid 轻松构建复杂布局
352 83
|
6月前
|
Web App开发 前端开发 数据可视化
用 CSS Grid 实现高效布局的 3 个实战技巧
用 CSS Grid 实现高效布局的 3 个实战技巧
|
前端开发 容器
使用 CSS Grid 布局实现响应式设计
【10月更文挑战第1天】使用 CSS Grid 布局实现响应式设计
485 99
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
CSS3注册表单文本框占位符特效源码
CSS3注册表单文本框占位符特效源码是一段简单的css3 input文本框占位符,placeholders占位符内容填写注册表单特效,非常有意思,欢迎有兴趣的朋友前来下载使用。
143 5
|
前端开发 JavaScript 开发者
掌握 CSS 弹性布局(Flexbox):构建复杂页面布局的高效秘籍与实战案例
CSS弹性布局(Flexbox)是现代网页设计中构建复杂页面布局的高效工具。本文将深入浅出地介绍Flexbox的核心概念、使用技巧及实际应用案例,帮助读者快速掌握这一强大布局方法。

热门文章

最新文章