让我们说一个
<div id="1">
<h1 id="2">Some Text</h1>
<h1 id="3">Some Text</h1>
</div>
然后将这些元素放在CSS中的矩形上
#1{
width:50%;
heght:50%;
background-image: linear-gradient(to top right, #ff4741 , #f8a2a1);
margin-left: auto;
margin-right: auto;
}
然后我想将2 <h></h>
居中于矩形.-的确切中心。
我该怎么做,所以当我调整页面大小时,东西会留在矩形的中央吗?
如果我尝试
#2{
position: absolute;
text-align: center;
left:50%
}
开始从页面的中间而不是元素的中间开始绘制文本,如果我执行left:25%;
,这将是与页面相关的元素的中间部分,则实际上开始绘制从中间点到右边,而不是居中。
那我该怎么办呢?
这是我目前拥有的实际代码,我的问题是标题,在不同的屏幕尺寸下,标题上的文本未居中于其矩形中。
#header {
position: fixed;
left: 0%;
top: 0%;
height: 5%;
width: 100%;
background-color: white;
font-family: 'Roboto', sans-serif;
font-size: 1em;
color: #555;
}
#logo {
position: absolute;
left: 5%;
top:20%;
font-size: 1em;
}
.headref {
position: absolute;
left: 50%;
top: 20%;
margin-left: 2%;
text-align: justify;
}
.headelemet {
position: relative;
}
.AccentLine {
position: fixed;
left: 0%;
height: 2.5%;
width: 100%;
background-color: #ff4741;
}
a {
color: inherit;
text-decoration: none;
}
a:hover {
color: #00A0C6;
text-decoration: none;
cursor: pointer;
}
#logo_show_off{
position:absolute;
left:0%;
top:5.8%;
height: 90%;
width: 100%;
background-image: linear-gradient(to top right, #ff4741 , #f8a2a1);
}
.logo{
margin-top: 5%;
display: block;
margin-left: auto;
margin-right: auto;
height: 25%;
}
#mascotLogo{
height:45%;
}
#MyLogo{
position: absolute;
font-family: 'Fjalla One', sans-serif;
font-size: 3em;
color:white;
text-align: center;
right:60%;
top:20%;
}
#MyMascot{
position: absolute;
font-family: 'Fjalla One', sans-serif;
font-size: 3em;
color:white;
text-align: center;
left:60%;
top:60%;
}
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Ionut.E portfolio</title>
<link href="https://fonts.googleapis.com/css?family=Oswald|Roboto|Fjalla+One" rel="stylesheet">
<link href="https://www.1001fonts.com/home-planet-bb-font.html" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="header.css">
<link rel="stylesheet" type="text/css" href="mainLogo.css">
</head>
<body>
<div id="logo_show_off">
<h1 id="MyLogo">THIS IS MY LOGO LOGO</h1>
<img id = "mainLogo" class = "logo" src = "Images/Logo.png">
<h1 id="MyMascot">THIS IS MY MASCOT LOGO</h1>
<img id = "mascotLogo" class = "logo" src = "Images/mascot_logo_png.png">
</div>
<!––HEADER––>
<div class="AccentLine"></div>
<div id="header">
<strong id="logo">IONUT.E</strong>
<strong class="headref headelemet">
<a href="index.html">Home </a>
</strong>
<strong class="headref headelemet">
<a href="index.html">JavaScript </a>
</strong>
<strong class="headref headelemet">
<a href="index.html">Graphic Design </a>
</strong>
<strong class="headref headelemet">
<a href="index.html">Visual Design </a>
</strong>
<strong class="headref headelemet">
<a href="index.html">Contact me </a>
</strong>
</div>
<!––HEADER––>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
<h1>test</h1>
</body>
</html>
答案 0 :(得分:3)
您可以在h1
元素上将text-align: center
放在.container
块级元素的中心,也可以将h1
元素内的内容居中
使用text-align: center
。
.container {
height: 50%;
background-image: linear-gradient(to top right, #ff4741 , #f8a2a1);
margin: 0 auto;
text-align: center;
width: 50%;
}
<div class="container">
<h1>Some Text</h1>
<h1>Some Text</h1>
</div>
答案 1 :(得分:3)
首先,您不能使用以数字开头的CSS选择器。这意味着#1, #2, #3
不是有效的选择器。解决此问题的方法是在transform: translateX(-50%);
元素中添加一行CSS属性<h>
。
答案 2 :(得分:1)
为了使元素居中,我建议使用flexbox。
.parent {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100vh;
flex-direction: column;
}
h1 {
text-align: center;
}