Html 如何将一个flexbox项目右侧对齐,将两个项目堆叠在左侧?
我有一个图像('repairPic')我想对齐到右边,这没有问题,还有两个元素('repairptitle&repairBtn')我想堆叠在左边,彼此重叠。我想使用flexbox,因为我认为这是一个建立网站的好方法 我对html和css非常陌生,这是我第一个真正的项目,所以非常感谢您的帮助 这是HTMLHtml 如何将一个flexbox项目右侧对齐,将两个项目堆叠在左侧?,html,css,Html,Css,我有一个图像('repairPic')我想对齐到右边,这没有问题,还有两个元素('repairptitle&repairBtn')我想堆叠在左边,彼此重叠。我想使用flexbox,因为我认为这是一个建立网站的好方法 我对html和css非常陌生,这是我第一个真正的项目,所以非常感谢您的帮助 这是HTML <!DOCTYPE html> <html> <head> <title>Quandtico | Home
<!DOCTYPE html>
<html>
<head>
<title>Quandtico | Home</title>
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="css/styles.css">
</head>
<body>
<header id="top" class="main-header">
<div class="top-nav">
<ul class="info">
<li><a href="#">quandticoguitars@gmail.com</a></li>
<li><a href="#">810-304-2166</a></li>
<li id="f1"><a href="#"><img class="fbook" src="imgs/facebook-f-brands.svg"/></a></li>
</ul>
</div>
<div class="main-nav">
<ul class="nav">
<li><h2>Quandtico</h2></li>
<li id='home'><a href='#'>Home</a></li>
<li><a href='#'>Repair Rates</a></li>
<li><a href='#'>About</a></li>
<li><a href='#'>Custom Guitars</a></li>
</ul>
</div>
</header>
<div class="intro">
<h1 id="quandtico">QUANDTICO GUITARS & REPAIRS</h1>
<p>Looking for a new guitar? Need a repair done that you want done right? We’ve got it all here at Quandtico. Whether you’re looking for a custom built guitar, the highest quality repair, or just a tune up, we’ve got you covered. We’re located in the thumb of Michigan , and we make sure our customer receives only the best quality products and service. Contact us today to see what we’ve got in store for you!</p>
</div>
<div class="main">
<div class="repair">
<ul id="repairList">
<li class="repairTitle">
<h4>Repair</h4>
</li>
<li class="repairBtn">
<button>Repair Rates</button>
</li>
<li>
<img id="repairPic" src="imgs/bald-eagle-flying-water.jpg"/>
</li>
</ul>
</div>
<div class="build">
<h4>Build</h4>
<button class="build-btn">Custom Guitar</button>
<img id="buildPic" src="../"/>
</div>
<div class="best">
<img src="../"/>
<h4>Only The Best</h4>
</div>
</div>
<div class="contact">
<form action="index.html" method="post">
<h1>Contact</h1>
<fieldset>
<input placeholder="Name" type="text" id="name" name="user_name">
<input placeholder="Email" type="email" id="mail" name="user_email">
<input placeholder="Subject" type="text" id="subject" name="subject">
<textarea placeholder="Message" cols="50">
</textarea>
<button class="send">Send</button>
</fieldset>
</form>
</div>
<footer class="foot">
<p>quandticoguitars@gmail.com</p>
<img class="fbook" src="imgs/facebook-f-brands.svg"/>
<p>© by Quandtico.</p>
</footer>
</body>
</html>
您可以修改id维修列表的ccs
#repairList {
display: flex;
flex-wrap: nowrap;
height: 569px;
/* width: 100%; */
justify-content: space-between;
display: block;
float: right;
clear: right;
。修复{
显示:flex;/*已添加*/
文本对齐:居中;/*已添加*/
}
#修理单{
/*显示:flex*/remove
柔性包装:包装;
高度:569px;
宽度:100%;
证明内容:之间的空间;
}
一种解决方案是将前两个li标记合并为一个,将每个标记包装在一个div中
<ul id="repairList">
<li>
<div class="repairTitle">
<h4>Repair</h4>
</div>
<div class="repairBtn">
<button>Repair Rates</button>
</div>
</li>
<li>
<img id="repairPic" src=""/>
</li>
</ul>
-
修理
修复率
-
如果您希望避免额外的div,那么将h4和按钮设置为display:block也会起作用
这些解决方案避免了因浮动定位而产生的常见问题。不显示:flex to repairList将该属性添加到repair classThank!这个答案让我想到创建两个不同的FlexBox,第一个是repairTitle和repairBtn,第二个是整个列表。我将第一个flexbox设置为列方向,第二个设置为行方向。非常感谢你!
<ul id="repairList">
<li>
<div class="repairTitle">
<h4>Repair</h4>
</div>
<div class="repairBtn">
<button>Repair Rates</button>
</div>
</li>
<li>
<img id="repairPic" src=""/>
</li>
</ul>