元素定位后如何居中

现在遮罩层使用的越来越多,因此,当元素定位之后如何在页面居中是首先要解决的问题。

以div元素绝对定位为例:

div{width:500px;height:400px;position:absolute;top:50%;left:50%;}

div是以左上角o点距上50%距左边50%,此时div在页面显示的位置----->如图中红色矩形

右图可知元素在上移自身高度的的一半,左移自身宽度的一半即可居中。用百分比设置width和height,也可以使用该方法。

div{margin:-200px 0 0 -250px;}

实例:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>绑定账号</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
    <link rel="stylesheet" href="login-mask.css"/>
    <link rel="stylesheet" href="style.css"/>
</head>
<body>
<div class="loginbox">
    <div class="mask"></div>
    <div class="login">
        <img src="image/background.png">
        <div class="midden">
            <p>登陆账号</p>
            <div class="mink">
                <span class="icon-intruder">账号</span>
                <input type="username"/>
            </div>
            <div class="mink" id="bottom_in">
                <span class="icon-loginPW">密码</span>
                <input type="password"/>
            </div>
            <div class="quer">确认绑定</div>-->
        </div>
    </div>
</div>

</body>
</html>
body,div,p,span,input{
    margin: 0;
    padding: 0;
    border:0;
}
.loginbox{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    z-index:1000;
}
/*遮罩层*/
.mask {
    width:100%;
    height:100%;
    background-color:#AAA;
    opacity:0.5;
}
/*内部内容*/
.login {
    width:80%;
    height:300px;
    color:#fff;
    position:fixed;
    top:50%;
    left:50%;
    margin:-150px 0 0 -40%;
}
.login img{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.midden{
    position:relative;
    top:0;
    left:0;
    z-index:100;
}
.midden p {
    width:100%;
    font-weight:bolder;
    color:red;
    font-size:20px;
    text-align:center;
    margin-top:30px;
}
.mink {
    width:80%;
    margin:20px auto 18px;
    overflow:hidden;
    -webkit-border-top-left-radius:5px;
    -webkit-border-top-right-radius:5px;
    border:2px solid #e24740
}
.mink span {
    width:25%;
    background-color:#E24740;
    float:left;
    font-size:15px;
    font-weight:bold;
    padding:7px 2px 7px 5px

}
input{
    width:71%;
    height:95%;
    float:left;
    padding:5px 0;
    outline:none;
    font-size: 15px;
}
input:-webkit-autofill{
    -webkit-box-shadow:0 0 0 1000px #fff inset;
}
.quer {
    width:80%;
    text-align:center;
    background-color:#E24740;
    margin:30px auto;
    padding:7px 0;
    font-size:1em;
    color:white;
    font-weight:bold;
    border-radius:5px;
    border:2px solid #E24740;
}

其中input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff inset;}是为了解决input在chrome显示背景图颜色变黄。这个属性是chrome的私有属性。

时间: 2024-10-05 15:33:06

元素定位后如何居中的相关文章

【随笔】关于绝对定位absolute相对于父元素定位的问题

绝对定位absolute的官方定义: 设置为绝对定位的元素框从文档流完全删除,并相对于其包含块定位,包含块可能是文档中的另一个元素或者是初始包含块.元素原先在正常文档流中所占的空间会关闭,就好像该元素原来不存在一样.元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框. 在官方定义中,并没有提到在什么情况下绝对定位相对于父元素定位,又在什么情况下相对于初始包含快也就是body定位? 其实很简单,当该元素设置为绝对定位absolute时,如果父元素为相对定位relative,则该元素相

两个DIV第一个用了定位后 如何让两个DIV 落在一起

<div style=" background: #ccc; width: 100px;position: relative;clear: both; overflow: hidden; display: inline-block;"> <div style=" z-index: 0; height: 100px; background: #ccc; width: 100px;position: relative; display: inline-block

Selenium Webdriver元素定位的八种常用方式

在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素.其中By类的常用定位方式共八种,现分别介绍如下. 1. By.name() 假设我们要测试的页面源码如下: <button id="gbqfba" aria-label="Google Search" name="btnK" class="gbqfba"><

Selenium2学习-002-Selenium2 Web 元素定位及 XPath 编写演示示例

此文主要对 Selenium2 的 Web 元素定位及 XPath 编写示例,敬请各位亲们参阅,共同探讨.若有不足之处,敬请各位大神指正,不胜感激! 通过 Firefox(火狐)浏览器的插件 Firebug + xpath checker ,结合三个示例来演示实现页面元素的定位及 xpath 路径编写.下面就一起开始我们的 Web 页面元素定位之旅吧... 首先,启动 Firefox(火狐)浏览器,并启动 Firebug 插件(按 F12 按键即可) 一.百度搜索框定位(元素的 ID) 网址输入

定位的盒子居中显示

一.定位的盒子居中显示 ★:margin:0 auto;  只能让标准流的盒子居中对齐. ★定位的盒子居中:先向右走父元素盒子的一半50%,再向左走子盒子的一半(margin-left:负值.) 二.设置盒子左外边距为auto,将盒子冲到右边 margin-left:auto;

Selenium2学习-009-WebUI自动化实战实例-007-Selenium 8种元素定位实战实例源代码(百度首页搜索录入框及登录链接)

此 文主要讲述用 Java 编写 Selenium 自动化测试脚本编写过程中,通过 ID.name.xpath.cssSelector.linkText.className.partialLinkText.tagName 的实战实例源代码演示 Selenium 元素定位的 8 种方法,源代码测试通过日期为:2015-01-26 00:18,请知悉.注意:其中通过 tagName 定位元素时,返回的是一个 WebElement 的数组,需要根据实际的测试需求对其进行进一步的处理. 希望能对初学 S

selenium+python自动化之元素定位

自动化按步骤拆分的话,可以分为四步操作:定位元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告.本篇接下来讲基本的八种元素定位方法.说的通俗一点,就是教大家找对象. 万物皆对象,所谓的对象,就是你喜欢的那个女神,她就是你的对象.既然是对象,她就有属性,比如眼睛大,头发长,皮肤白,颜值高.这些都是她的属性,每个属性又有对应的属性值,如眼睛="大",头发="长",颜值="高",对应的=后面就是它的属性的值. 同样的道

Selenium2+python自动化6-八种元素元素定位(Firebug和firepath)

前言 自动化只要掌握四步操作:获取元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告.本篇主要讲如何用firefox辅助工具进行元素定位. 元素定位在这四个环节中是至关重要的,如果说按学习精力分配的话,元素定位占70%:操作元素10%,获取返回结果10%:断言10%.如果一个页面上的元素不能被定位到,那后面的操作就无法继续了.接下来就来讲webdriver提供的八种基本元素定位方法. 一.环境准备: 1.浏览器选择:Firefox 2.安装插件:Firebug和

Robot Framework自动化测试(二)---元素定位

说明: 不要误认为Robot framework 只是个web UI测试工具,更正确的理解Robot framework是个测试框架,之所以可以拿来做web UI层的自动化是国为我们加入了selenium2的API.比如笔者所处工作中,更多的是拿Robot framework来做数据库的接口测试,当然,需要先将相关的数据库包导入. 那么测试框架的本质是什么?个人觉得有以下几个方面. 1.比较 测试实质就是“比较”,在测试之前需要先写用例,假设经过各种操作之后会得到一个预期的结果,然后,在测试的过