دو روش برای افزودن متن روی تصاویر
نکته جالبی که اگر در CSS مبتدی هستید یاد بگیرید این است که چگونه متن را روی تصاویر اضافه کنید، در نهایت، تقریباً در هر وب سایتی این نوع ویژگی را مشاهده می کنید. بنابراین من دو راه برای انجام این کار را به شما نشان خواهم داد.
راه استاندارد
- یک div یا هر عنصر دیگری ایجاد کنید و آن را به سبک خود سبک کنید
<div class="example">
</div>
.example {
width: 187px;
height: 347px;
border-radius: 10px;
font-family: Poppins;
}
2. قرار دادن یک تصویر در یک div با a position
از absolute
و یک object-fit
از cover
. همچنین باید مطمئن شوید که تصویر دارای عرض و ارتفاع یکسان با والد است.
<div class="example">
<img src="https://images.unsplash.com/photo-1643678063167-1916c49968e6?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=387&q=80">
</div>
.example > img {
width: inherit;
height: inherit;
object-fit: cover;
position: absolute;
border-radius: inherit;
}
/*Note: the inherit property value is used
to give something the same value as its parent*/
3. یک محفظه متنی با همان عرض و ارتفاع والد اضافه کنید اما a position
از relative
. آن ظرف را با متن و هدرهای مورد نظر خود پر کنید. متن خود را با افزودن flex به ظرف خود قرار دهید، سپس از یکی از آنها استفاده کنید flex-start
، center
، یا flex-end
برای قرار دادن در مرکز بالا یا پایین والد.
<div class="example">
<img src="https://images.unsplash.com/photo-1643678063167-1916c49968e6?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=387&q=80">
<!--text container-->
<div class="exampleInfo">
<!--I also put the text in one smaller container so i can center the header-->
<div class="info1">
<h4>The Florida Keys</h4>
<p>Plane arriving at May 15th, 6am</p>
</div>
</div>
</div>
.exampleInfo {
color: white;
width: inherit;
height: inherit;
position: relative;
border-radius: inherit;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 14.06%, #1E1E1E 100%);
/*Placing the text at the bottom*/
display: flex;
align-items: flex-end;
text-align: center;
font-size: 20px
}
.info1 > h4 {
display: flex;
align-items: center;
justify-content: center;
}
تصویر پس زمینه
راه دیگر برای افزودن متن روی تصویر، تنظیم تصویر به عنوان پسزمینه است. در اینجا یک مثال در مورد نحوه انجام این کار آورده شده است.
- یک div یا هر عنصر دیگری با محتوا و متنی که می خواهید ایجاد کنید، سپس به آن استایل دهید.
<div class="exampleTwo">
<h2>Climb the highest mountains</h2>
</div>
.exampleTwo {
width: 187px;
height: 347px;
border-radius: 10px;
text-align: center;
font-family: Aboreto;
}
2. به آن عنصر a بدهید background-image
با استفاده از url()
ارزش. مطمئن شوید که با استفاده از آن مناسب است background-size: cover
.
.exampleTwo {
width: 187px;
height: 347px;
border-radius: 10px;
text-align: center;
font-family: Aboreto;
/*Adding the image*/
background-image: url('https://images.unsplash.com/photo-1683727610671-646dbf56aedf?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=387&q=80');
background-size: cover;
}
که بهتر است
حتی اگر تصویر پسزمینه به hTML و CSS کمتری نیاز دارد، اگر یک تصویر پسزمینه به اندازه کافی بزرگ انتخاب نکنید، آن تصویر پسزمینه پاسخگوی ابزارهایی با اندازه بزرگ مانند رایانههای شخصی نخواهد بود. بنابراین هر کدام بهتر است انتخاب شماست، من معمولا از تصویر پس زمینه استفاده می کنم اما برای پروژه های بزرگ هر از گاهی از روش استاندارد استفاده می کنم.
با تشکر از شما برای خواندن! از آخرین باری که از زمانی که آزمایش دولتی داشتم به انجمن DEV رفته بودم، مدتی می گذرد، اما خدا را شکر که تمام شد. دوباره من را خواهید دید که در مورد ساخت یک وب سایت مینیمال صحبت می کنم، روز/شب خوبی داشته باشید 👋.