PDA

View Full Version : سوال: ارتفاع Border



ab.ali
شنبه 14 تیر 1393, 12:03 عصر
با سلام، من یک منو دارم که به سمت راستشون Border دادم ، اما Border ها تمام ارتفاع رو می گیرن و مثلا اگز منو ارتفاعش 50px، ارتفاع Border هم همون می شه، راهی نیست که ارتفاعش رو خودمون کنترل کنیم؟

2undercover
شنبه 14 تیر 1393, 12:25 عصر
می تونید به جای border از شئ های کاذب after و before استفاده کنید.

qartalonline
شنبه 14 تیر 1393, 12:36 عصر
خیر راهی نیست چون border همانطور که از اسمش پیداست حاشیه هستش حاشیه هم بعد از ارتفاع و عرض حساب میشه.
البته برای کاری شما میخواین انجام بدین ترفندی وجود داره مثلا فرض کنید که تگ li دارید که داخلش تگ a هستش و میخواهید برای هر لینک در سمت راست یا چپ border داشته باشید که ارتفاع شون کمتر از ارتفاع لینک ها باشه برای اینکار به تگ li حاشیه بدید و ارتفاع li رو از ارتفاع تگ a کمتر کنید.
نمونه:

<!DOCTYPE html>
<html>
<head>
<title>title</title>
<meta charset="UTF-8">
<style type="text/css">
#nav li{
list-style: none;
display: block;
float: right;
border-left: 1px #017030 solid;
height: 20px;
}
#nav li:last-child{
border: none;
}
#nav li a{
display: block;
height: 30px;
margin: 0 5px;
margin-top: -5px;
line-height: 30px;
padding: 0 10px;
}
#nav li a:hover{
background-color: darkseagreen;
}
</style>
</head>
<body>

<ul id="nav">
<li><a href="#">صفحه ی اصلی</a></li>
<li><a href="#">درباره ما</a></li>
<li><a href="#">تماس با ما</a></li>
</ul>

</body>
</html>

ab.ali
شنبه 14 تیر 1393, 13:31 عصر
ممنون فکر می کنم کلا اگر استفاده نکنیم بهتره چون اگر از hover برای تغییر پس زمینه li ها استفاده کنیم، با توجه به ارتفاع کم تر یکم زشت می شه.

qartalonline
شنبه 14 تیر 1393, 13:36 عصر
با hover پس زمینه تگ a رو عوض کنید. همانطور که تو نمونه قرار دادم.

ab.ali
شنبه 14 تیر 1393, 13:59 عصر
خب این طوری کل عرض منو رو نمی گیره، درسته؟

qartalonline
شنبه 14 تیر 1393, 14:52 عصر
چرا margin چپ و راست تگ a رو حذف کنید کل عرض رو بگیره.