چند ترفند CSS که بهتر است بدانید


- 590 بازدید

در این مقاله، چند ترفند CSS بسیار مفید مطرح شده است که به شما کمک می کند صفحات وب بسیار عالی طراحی کنید. ممکن است شما برخی یا همه ی این ترفند ها را از قبل بلد باشید، با این حال، این می توانید یک مرجع دم دستی برای ترفند های جذاب CSS برای شما باشد که باید بدانید.
١ – تغییر رنگ متن در حالت انتخاب شده
ممکن نیست که این ترفند را بلد بوده باشید!
شما به کمک CSS می توانید رنگ متن صفحات وب را در حالت انتخاب شده مشخص کنید. این ترفند دست کم در مرورگر های جدید نظیر safari و firefox کار می کند.
/**
* Safari and Opera
*/
::selection {
background: #c3effd;
color: #000;
}
/**
* Firefox
*/
::-moz-selection {
background: #c3effd;
color: #000;
}
همانطور که می بینید، با استفاده از انتخابگر ::selection می توانید متن های انتخاب شده را هدف قرار دهید
٢ – جلوگیری از جهش اسکرول فایرفاکس
اگر سایز محتوا از سایز پنجره کمتر باشد، معمولا فایرفاکس اسکرول را مخفی می کند.
مشکلی که گاها پیش می آید این است که در صورتی که به هر دلیل سایز محتوا تغییر کند یا سایز پنجره نسبت به محتوا تغییر کند، نوار اسکرول مجددا ظاهر می شود و باعث تولید جهش در صفحه می شود.
در صورتی که می خواهید اسکرول همواره در فایرفاکس نمایان باشد، می توانید از دستور زیر استفاده کنید:
html {
overflow-y: scroll;
}
٣ – شکستن صفحات و رفتن به صفحه ی بعد هنگام پرینت
گرچه اکثر کاربران اینترنت ترجیح می دهند که صفحات وب را به صورت آنلاین مطالعه کنند، اما بعضی از کاربران شما ممکن است بخواهند متن مقاله را پرینت بگیرند و سپس مطالعه کنند.
به کمک CSS می توانید محل شکسته شدن صفحات و رفتن به صفحه ی بعد در هنگام پرینت را کنترل کنید. فقط کافی است که کد CSS زیر را به استایل های خود اضافه کنید و سپس به هر تگی که می خواهید در صفحه ی بعد چاپ شود، کلاس page-break را انتساب دهید.
.page-break {
page-break-before: always;
}
۴ – استفاده از دستور !important
طراحان با تجربه، از کاربرد این دستور اطلاع دارند، اما معمولا تازه کارها، از این دستور !important در CSS بی اطلاع هستند و تعجب می کنند.
با افزودن دستور !important به انتهای دستور css تان، اولویت دستور مورد نظر را نسبت به دستورات دیگر که با آن در تضاد هستند، افزایش می دهید.
در کد زیر، رنگ زمینه، به دلیل وجود !important آبی خواهد بود (و نه قرمز)
.page {
background-color: blue!important;
background-color: red;
}
کاربرد روش فوق وقتی است که شما یک css rule می نویسید، اما متوجه می شوید که هیچ تاثیری ندارد! دلیل این مسئله احتمالا این است که یک دستور دیگر با اولویت بالاتر وجود دارد که اثر دستور شما را خنثی می کند. برای این که دستور شما اولویت بالا تری داشته باشد و اثر دستورات دیگر را خنثی کند، می توانید از !important استفاده کنید.
۵ – تکنیک جایگذاری تصویر
همواره توصیه می شود که برای نمایش متن، از کد عادی html استفاده کنید و از تصویر برای نمایش متن پرهیز نمایید. این باعث می شود که سرعت بارگذاری صفحه ی وب بالا برود و همچنین صفحه ی وب بیشتر قابل دسترس باشد (به عنوان مثال برای افراد نا بینا با استفاده از مرورگر های صفحه خوان)
با این حال، گاهی اوقات ممکن است بخواهید به جای متن از تصویر استفاده کنید. به عنوان مثال فرض کنید که در بالای تمامی صفحات سایتتان، عبارت “خرید آنلاین” وجود دارد و شما می خواهید که این عبارت را با یک فونت خیلی خاص نمایش دهید که هیچ مرورگری از آن پشتیبانی نمی کند. در این صورت، احتمالا تنها گزینه ای که وجود دارد این است که به جای متن فوق، یک تصویر قرار دهید.
یک روش بدیهی این خواهد بود که به صورت زیر عمل کنید:

اما شما می خواهید که در موتور های جستجو، برای عبارت فوق، صفحه ی شما در لیست ظاهر شود. موتور های جستجو نیز به متن درون alt به اندازه ی متن درون صفحات وب اهمیت نمی دهند. و بهتر است که عبارت به صورت زیر باشد:

Buy online

برای حل این مشکل می توان از تکنیک جایگذاری تصویر با متن استفاده کرد: متن را با کد عادی html می نویسیم و سپس به کمک css تصویر را با متن جایگزین می کنیم
h1{
background: url(buy-image.gif) no-repeat;
height: 100px;
text-indent: -2000px;
}
اطمینان حاصل کنید که مقدار ارتفاع تصویر را به درستی مشخص کنید.
با روش فوق، متن ۲۰۰۰ پیکسل به سمت صفحه ی نمایش خواهد رفت و از صفحه خارج خواهد شد و دیگر نمایش داده نمی شود و به جای آن تصویر نمایش داده می شود.
توجه کنید که این کار سبب می شود که کاربرانی که نمایش تصویر را در مرورگر خود غیر فعال کرده اند، قادر به مشاهده ی متن نخواهند بود.
۶ – ارتفاع حداقل که در تمامی مرورگر ها کار می کند.
متاسفانه مرورگر Internet Explorer دستور min-height در CSS را درک نمی کند و لذا نمی توان با دستور فوق، ارتفاع حد اقل را در IE مشخص نمود.
برای حل این مشکلی می توانید از ترفند زیر استفاده کنید.
#container{
/* all browsers except ie6 will respect the !important flag */
height: auto!important;
min-height: 500px;
/* Should have the same value as the min height above */
height: 500px;
}
٧ – مشخص کردن لینک هایی که در پنجره ی جدید باز می‌شوند.
کد CSS زیر سبب می شود که لینک هایی که در پنجره ی جدید باز می شوند، را با استایل ویژه نمایان می کند. به این ترتیب، بازدیدکنندگان سایت، قبل از این که بر روی لینک کلیک کنند، می دانند که این لینک در یک پنجره یا تب جدید باز خواهد شد
a[target=”_blank”]:before,
a[target=”new”]:before {
margin: 05px00;
padding: 1px;
outline: 1pxsolid#333;
color: #333;
background: #ff9;
font: 12px”Zapf Dingbats”;
content: “\279C”;
}
در کد فوق چند نکته وجود دارد که خوب است به آنها توجه کنید:
• به انتخابگر a[target=”_blank”] توجه کنید. در CSS می توان تگ های html را بر اساس مقادیر خواص آن ها فیلتر کرد. برای این منظور همانطور که می بینید، مقدار خواص را در درون [] قرار می دهیم. در این دستور لینک هایی که دارای خاصیت target=”_blank” هستند را انتخاب کرده ایم. یعنی لینک هایی که در یک تب جدید باز می شوند.
• به کلاس کاذب :before و :after توجه کنید. این دو کلاس، تگ خاصی را هدف نمی گیرند، بلکه فقط یک نقطه ی خالی در قبل یا بعد تگ مربوطه را انتخاب می کنند.
• به دستور content در CSS توجه کنید. به کمک دستور content می توان یک کاراکتر یا یک متن را در قبل یا بعد از یک تگ قرار داد. توجه کنید که دستور content فقط زمانی قابل استفاده است که از کلاس کاذب :after و یا :before استفاده شده باشد.
در کد فوق، ما یک علامت \۲۷۹C که به صورت یک فلش نمایش داده می شود در قبل و بعد لینک ها قرار داده ایم.
٨ – استایل دهی به لیست های مرتب به شیوه ی متفاوت
استایل دهی به اعداد یک لیست مرتب (شماره گذاری شده) به شیوه ای متفاوت نسبت به باقی متن هریک از آیتم های لیست.
در کد زیر، همانطور که می بینید، یک فونت را برای تگ ol تعریف کرده ایم و بعد برای تگ p ی درون آن، مجددا فونت را تغییر داده ایم. به این ترتیب، استایل خود لیست (شامل اعداد لیست) با محتوای آن (که باید در درون p قرار گرفته باشد) متفاوت خواهد بود.
ol {
font: italic1emGeorgia, Times, serif;
color: #999999;
}
ol p {
font: normal.8emArial, Helvetica, sans-serif;
color: #000000;
}
٩ – استفاده از حروف بزرگ در اولین حرف مقاله
شما می توانید حرف اول مقاله تان را همانند روزنامه ها و مجلات، بزرگ کنید! برای ایجاد این جلوه، می توانید از کلاس کاذب :first-letter استفاده کنید.
p:first-letter {
display: block;
margin: 5px005px;
float: left;
color: #FF3366;
font-size: 3.0em;
font-family: Georgia;
}
١٠ – شفافیت به گونه ای که در تمام مرورگر ها کار کند
گرچه CSS 3 خاصیت جدید opacity را برای شفافیت معرفی کرده است، اما همه ی مرورگرها از آن پشتیبانی نمی کنند. این یک ترفند CSS برای شفافیت در همه ی مرورگرها می باشد
.transparent_class {
filter: alpha(opacity=50);
-moz-opacity: 0.5;
-khtml-opacity: 0.5;
opacity: 0.5;
}
امیدوارم مورد استفاده شما عزیزان قرار گیرد.

یک نفر این پست رو پسندیده!

Print Friendly, PDF & Email



  • درباره سامان نیکوپرست

    با درود. سامان نیکوپرست هستم. 27 سال از نیشابور. کارشناس حقوق. شاغل. از 12 ساله گی شعر را شروع کردم و در حال حاضر با هنرمندان بزرگ کشور عزیزمان ایران مشغول به کار هستم. نوازنده گیتار کلاسیک هستم و کمی هم به ساز های بادی تسلط دارم البته خیلی کم. عاشق کامپیوتر و هر چیزی که به کامپیوتر مربوط میشه. نابینای مادرزاد هستم. به برنامه نویسی هم علاقه دارم اما برنامه نویس نیستم طراحی سایت را در حد قابل توجهی میدانم و کم و بیش مشغول فعالیت در این زمینه هستم. یه زمانی زن داشتم اما الان مرگ هم ندارم. پیچید به بازی. همین دیگه. شاد باشید.
    این نوشته در آموزش, اطلاع رسانی, اینترنت, ترفند ارسال و , , , , برچسب شده است. افزودن پیوند یکتا به علاقه‌مندی‌ها.

    6 پاسخ به چند ترفند CSS که بهتر است بدانید

    1. بهنام نصیری بهنام نصیری می‌گوید:

      سلام سامان جان
      ممنون از پست
      من که مدیر ویرایشم و اصلا از اینا سر در نمیارم
      اینا راسته کار امیرن

    2. سعید پناهی سعید پناهی می‌گوید:

      سلام.
      آقا اولین پست مبارک.
      شناسنامهتو خوندم.
      کلی خندیدم.
      منظورم با چند خط آخرش بودا.

    3. امیر رضا رمضانی می‌گوید:

      سلام
      آقا خوب زدی تو کار وب نویسیا!
      هاجی بیا C++ یاد بگیر با هم بازی بنویسیم.

    4. سلام.
      به سایت خودتون خوش اومدید.
      ممنون از پست.

    5. سامان نیکوپرست می‌گوید:

      سلام وقت همه بخیر.
      مرسی بهنام جان.
      فدای تو سعید جان نوشتم که بخندی عزیزم.
      امیر جان باور کن خواستم یاد بگیرم یکی دو جلسه هم چیز کار کردم با یکی از این اساتید که خیلی لایک داره. خدایا اسمش چی بود همونی که باهاش بازی مینویسن.
      اها BGT
      خلاصه این شد که شد دیگه.
      جناب سعیدی فر. ممنون از لطفت.
      خوش باشید.

    6. سلام داداش! به سایت خودت خوش اومدی. اولین پست مبارک. منتظر پستهای بعدی هستیم

    پاسخ دهید

    نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

    Question   Razz  Sad   Evil  Exclaim  Smile  Redface  Biggrin  Surprised  Eek   Confused   Cool  LOL   Mad   Twisted  Rolleyes   Wink  Idea  Arrow  Neutral  Cry   Mr. Green