调整大小时弹出警报会从屏幕上移开

时间:2013-03-25 10:25:58

标签: jquery asp.net html css

当用户在图标上移动鼠标时,会显示一个弹出框。悬停的css如下: -

.profile-bubble {
background-color: #EDEDED;
border: 2px solid #666666;
font-size: 15px;
font-weight: bold;
line-height: 1.3em;
margin: 0.6% 2% 2% 90%;
padding: 10px;
position: absolute;
text-align: center;
width: 150px;
opacity: 0.9;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
-moz-box-shadow: 0 0 5px #888888;
-webkit-box-shadow: 0 0 5px #888888;

}

这样可以正常使用,但问题是当我调整屏幕大小时,或者如果用户的分辨率低于我,则警报框会退出屏幕。

如何修改此css以使其与屏幕大小成比例?

感谢您的帮助和时间。

UPDATE ---------------------------------------------- -------- 这是标题css: -

/* Header*/

标头{     padding-bottom:5px; }

#headerContainer {
height: 33px;
background-position: 10px 2px;
padding-top: 2px;

}

.headerProfileNotifications {
float: right;
padding-right: 4px;
margin: 3px;
position: relative;

}

.headerProfilePhoto {
float: right;
position: relative;
margin: 3px;

}

img {
border: 1px solid #D5D5D5;    

}

img {
border: 1px solid #D5D5D5;    

}

img:hover {
border: 2px solid #000000;    

}

.headerProfileDetails {
float: right;
padding-right: 4px;
font-size: 11px;
text-align: right;

}

.headerProfileName {
margin-top: 2px;

}

.headerProfileEmail {
clear:both;
float:right;
margin-top: 0px;

}

和html: -

<header>
        <div class="content-wrapper">
            <div id="headerContainer">
                <div class="headerProfileNotifications">
                        <img src="Images/" alt="notification" />
                </div>
                <div class="headerProfilePhoto">
                        <img src="Images/" alt="profile_photo" />
                </div>
                <div class="headerProfileDetails">
                    <div class="headerProfileName">
                            John Smith
                    </div>
                    <div class="headerProfileEmail">
                            john.smith@somemail.co.uk
                    </div>

                </div>
            </div>
         </div>
    </header>

2 个答案:

答案 0 :(得分:0)

使宽度和高度也为百分比 -

width:50%;
height:50%;

并将框大小设置为边框,这样您就不必考虑边距,填充等。而这一切都只是宽度。

然后相应地定位(你有position:absolute) -

top:20%;
left:20%;

您的图像和气泡必须位于容器内,容器内没有其他元素 见example on codepen.
这个容器必须相对放置。

答案 1 :(得分:0)

尝试将lefttop属性放在css:

.profile-bubble {
    background-color: #EDEDED;
    border: 2px solid #666666;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.3em;
    margin: 0.6% 2% 2% 90%;
    padding: 10px;
    position: absolute;
    text-align: center;
    width: 150px;
    opacity: 0.9;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-box-shadow: 0 0 5px #888888;
    -webkit-box-shadow: 0 0 5px #888888;
    left:25%; //<-------------------------------add this
    top:25%;  //<-------------------------------and this
 }