javascript - 文本在 jQuery 中仅在第一行之后居中

标签 javascript jquery html css

所以我想做一个测验,在测验页面上,如果用户单击“开始”按钮,就会出现 jQuery 动画,并且在动画上会显示一些文本。

问题是第一行的文本只在动画发生时居中,只要文本可以填满动画的宽度。但如果文本足够长,在进入第二行后,它会自行居中。

如何修改我的代码,即使文本小到只适合一行,它也始终居中?

HTML

<!DOCTYPE html>
<html>
    <head>
        <link href='http://fonts.googleapis.com/css?family=Indie+Flower'     rel='stylesheet' type='text/css'>
        <link rel="stylesheet" type="text/css" href="50.css">
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
        <script>
         $(document).ready(function(){
            $("button").click(function(){
                var div = $("#tgemp");
                startAnimation();
                function startAnimation(){
                div.animate({height: "100%", width: "100%"}, 3000, "swing");
                div.css("background-color", "#99FF66");
        }
        document.getElementById("tt").style.opacity = "1";
        });
        });
        </script>
    </head>
    <div id = "tgemp">
        <p id = "tt"> A walk on the beach may lead to contact with sand</p>
    </div>
    <body>
        <h1>50 States Quiz</h1>
        <div id="firstDiv" align="center"> 
            <h2> Can you name all 50 states? </h2>
            <p id = "timer"> 5:00 </p>
            <button type="button" id = "time" onclick="Begin();"> Begin </button><br/><br/><br/><br/>

            <input type="text"  id = "tb" onInput="Verify()" enabled></input><br/><br/><br/>
        </div><br/>
    </body>
    <center><img src="us.png" height = '50%' id = "img"></center>
</html>

CSS

body{
background-color: #ADD8E6;
background: -webkit-linear-gradient(left, rgba(255,90,90,1),rgba(114,188,212,1));
background: -o-linear-gradient(right, rgba(255,90,90,1),rgba(114,188,212,1));
background: -moz-linear-gradient(right, rgba(255,90,90,1),rgba(114,188,212,1));
background: linear-gradient(to right, rgba(255,90,90,1),rgba(114,188,212,1));
}

h1,h2,#timer{
font-family: 'Indie Flower',serif;
text-align: center;
color: white;
font-size: 325%;
}

h2,#timer{
font-size: 200%;
}

#time {
background: #65a9d7;
border: solid 0px #1e90ff;
border-radius: 50px; 
-moz-border-radius: 50px; 
-webkit-border-radius: 50px; 
color: #ffffff;
font-size: 130%;
font-family: 'Indie Flower',serif;
padding: 5px 15px;
}

#time:hover {
background: #c42f2f;
}

#time:active {
background: #FF9200;

border: solid 0px #1e90ff;
border-radius: 50px; 
-moz-border-radius: 50px; 
-webkit-border-radius: 50px;
}

#time:focus{
outline:0 !important;
}

#tb {
background-color: #ADD8E6;
background: -webkit-linear-gradient(right, rgba(255,90,90,1),rgba(114,188,212,1));
background: -o-linear-gradient(left, rgba(255,90,90,1),rgba(114,188,212,1));
background: -moz-linear-gradient(left, rgba(255,90,90,1),rgba(114,188,212,1));
background: linear-gradient(to left, rgba(255,90,90,1),rgba(114,188,212,1));
border:3px solid #FF9200;
border-radius:10px;
height: 30px;
width: 200px;
text-align:center;
font-family: 'Indie Flower',serif;
color: white;
font-size: 125%;
outline:0 !important;
}

#tgemp{
font-family: 'Indie Flower',serif;
color: #99FF66;
width:0px;
height:0px;
position:absolute;
left:0px;
top:0px;
background-color:red;

}

#tt{
font-family: 'Indie Flower',serif;
color: white;
opacity:0;
position:absolute;
font-size: 400%;
text-align: center;
}

#tt:after{
  content: "";
  display: inline-block;
  width: 100%;
}

最佳答案

您可以将 width: 100% 添加到 #tt 元素,您应该可以开始了!查看以下 jsbin 的结果:http://jsbin.com/sezadoxura/1/edit?html,css,js,output

关于javascript - 文本在 jQuery 中仅在第一行之后居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28709507/

相关文章:

javascript - 如何使用 HTML 5 实现类似文件上传/附件的 gmail

javascript - 构造函数的实例可以继承原型(prototype)桶中未定义的成员吗?

javascript - 无法将 'this' 值从一个 javascript 函数传递到另一个函数?

javascript - 在 Javascript 中生成内容时应该使用字符串还是节点?

javascript - 尝试用 HTML、Javascript 和文件点击创建播放列表(音频),它必须将绝对路径发送到 java?

javascript - 如何使用 AngularJS 在部分 html 文件中悬停时突出显示图像图中的区域

javascript - 需要一个正则表达式来确保数字以 01 02 或 08 开头并且长度为 10 或 11 位

javascript - 菜单项(html)将javascript加载到div中

javascript - 使用jquery影响具有相同id的div

javascript - ui-sortable 不工作(对于预定义的 DOM 位置)