محتویات جدول را تعریف می کند. |
| نام جدول را مشخص می کند. |
|
| سلول هدر جدول را مشخص می کند. |
---|
|
یک ردیف جدول را تعریف می کند. |
|
| سلول داده جدول را تعریف می کند. |
برای حاوی سرصفحه گروه در جدول (سرصفحه جدول) استفاده می شود. |
| |
برای حاوی "بدنه" جدول استفاده می شود. |
|
برای حاوی "پانویس" جدول (footer) استفاده می شود. |
| ویژگی های ستون داده شده را برای هر ستون درون تگ تعریف می کند .
|
| گروهی از ستون ها را در جدول تعریف می کند. |
کار با تورفتگی در جدول
استفاده از بالشتک در جدول
تورفتگی های جدول
1 |
2 |
3 |
4 |
2 | | | |
3 | | | |
4 | | | |
AT این مثالما:
- ما جدول را با استفاده از تکنیک مرکز افقی با حاشیه های بیرونی در مرکز قرار دادیم (حاشیه: 0 خودکار).
- برای نام جدول (برچسب ) لایه پایینی را روی 19 پیکسل قرار می دهیم. امیدوارم با اعداد ناهموار گیج نشوید :)
نتیجه مثال ما:
فاصله بین سلول ها
پس از مثال بالا، ممکن است متوجه شده باشید که ما هنوز بین تمام سلول های جدول فاصله داریم. بیایید نحوه حذف شکاف بین سلول های جدول یا افزایش آن را بررسی کنیم.
برای تعیین فاصله بین مرزهای سلول های همسایه، باید از ویژگی CSS - border-spacing استفاده کنید.
تغییر فاصله بین جداول
فاصله مرزی: 30 پیکسل 10 پیکسل؛
1 |
2 |
3 |
2 | | |
3 | | |
فاصله بین مرزها: 0.2 em;
1 |
2 |
3 |
2 | | |
3 | | |
در این مثال ما:
- شناور به سمت چپ ). اگر مبحث عناصر شناور را از دست داده اید، همیشه می توانید در این آموزش به آن بازگردید - "".
- علاوه بر این، حاشیه سمت راست جداول را 30 پیکسل می کنیم و تراز عمودی جداول را تنظیم می کنیم (بالای عنصر با بالای بلندترین عنصر تراز می شود). در این مقاله به بحث مفصل در مورد این ویژگی باز خواهیم گشت.
- ) پررنگ است.
- برای سلولهای جدول (سربرگ و سلولهای داده)، یک حاشیه جامد 1 پیکسلی با رنگ هگزا #F50 تنظیم میکنیم و بالشتک را روی 19 پیکسل در هر طرف تنظیم میکنیم.
- برای اولین میز با کلاس .اولینبرای جدول دوم با کلاس، فاصله بین سلول های جدول (ویژگی فاصله مرزی) را روی 30 پیکسل 10 پیکسل قرار می دهیم. .دومینبرابر با صفر، برای جدول سوم با کلاس .سومبرابر با 0.2em
توجه شما را به این واقعیت جلب می کنم که اگر فقط یک مقدار طول در ویژگی فاصله بین مرز مشخص شده باشد، فواصل را هم به صورت افقی و هم به صورت عمودی نشان می دهد و اگر دو مقدار طول مشخص شده باشد، اولی تعیین می کند. فاصله افقی و دومی عمودی. فاصله بین مرزهای سلول های همسایه را می توان در واحدهای CSS (px، cm، em و غیره) مشخص کرد. مقادیر منفی مجاز نیستند.
نتیجه مثال ما:
حاشیه های اطراف سلول های جدول را نشان دهید
می توانی بگویی: - بنابراین، ما با استفاده از ویژگی border-spacing با مقدار 0 شکاف بین سلول ها را حذف کردیم، اما چرا اکنون مرزهای سلولی داریم که قطع می شوند؟
حاشیه های دوگانه به دلیل اضافه شدن حاشیه پایین یک سلول به حاشیه بالای سلول در زیر آن ایجاد می شود، وضعیت مشابهی در طرفین سلول ها رخ می دهد و این از نظر نمایش جدول منطقی است، اما خوشبختانه در آنجا وجود دارد. راهی برای گفتن به مرورگر است که ما نمیخواهیم چنین رفتار گستاخانهای در مرزهای سلولی را ببینیم.
برای این شما باید استفاده کنید ویژگی CSSمرز فروریختن . به اندازه کافی عجیب، استفاده از ویژگی border-collapse با مقدار collapse است بهترین راهچگونه می توانم شکاف بین سلول ها را حذف کنم و در عین حال مرزهای دوگانه بین آنها ایجاد نشود.
مقایسه رفتار مرزها در هنگام استفاده از ویژگی border-spacing با مقدار 0 و ویژگی border-collapse با مقدار collapse را در نظر بگیرید:
نمونه ای از نمایش حاشیه ها در اطراف سلول های جدول
border-collapse: فرو ریختن;
1 |
2 |
3 |
2 | | |
3 | | |
در این مثال ما:
- جداول خود را شناور کردیم و به سمت چپ تغییر مکان دادیم (شناور: چپ)، حاشیه بیرونی سمت راست آنها را روی 30 پیکسل قرار دادیم.
- نام جدول را تنظیم کنید (برچسب ) پررنگ است.
- برای سلولهای جدول (سربرگ و سلولهای داده)، یک حاشیه جامد 5 پیکسلی با رنگ هگز #F50 تنظیم میکنیم و عرض ثابت 50 پیکسل و ارتفاع 75 پیکسل را تعیین میکنیم.
- برای اولین میز با کلاس .اولینفاصله بین سلول های جدول را صفر می کنیم (فاصله مرزی: 0 ;) و برای جدول دوم با کلاس .دومینویژگی border-collapse را روی collapse قرار دهید، که در صورت امکان، مرزهای سلول را در یکی ادغام می کند.
نتیجه مثال ما:
رفتار سلول های خالی
با CSS می توانید تعیین کنید که حاشیه ها و پس زمینه سلول های خالی در جدول نمایش داده شود یا خیر. ویژگی vala-cells مسئول این رفتار است که همانطور که در مثال های قبلی متوجه شده اید سلول های خالی را به طور پیش فرض نمایش می دهد.
بیایید به یک مثال برویم:
نمونه ای از نمایش سلول های خالی جدول
سلول های خالی: نشان می دهد.
1 |
2 |
3 |
2 | |
☺ |
3 |
☺ | |
سلول های خالی: پنهان کردن.
1 |
2 |
3 |
2 | |
☺ |
3 |
☺ | |
درک نحوه عملکرد ویژگی سلولهای خالی از این مثال بسیار آسان است، اگر روی مخفی کردن تنظیم شده باشد، سلولهای خالی و پسزمینه در آنها پنهان میشوند، اگر روی نشان دادن (پیشفرض) تنظیم شود، نشان داده میشوند. .
محل سرصفحه جدول
بیایید به یک ویژگی ساده دیگر برای یک ظاهر طراحی جدول نگاه کنیم - caption-side , که موقعیت عنوان جدول (بالا یا زیر جدول) را تعیین می کند. بهطور پیشفرض، ویژگی Caption-side روی بالا تنظیم شده است که عنوان را بالای جدول قرار میدهد. برای قرار دادن هدر زیر جدول، باید از ویژگی با مقدار پایین استفاده کنید.
بیایید به مثالی از استفاده از این ویژگی نگاه کنیم:
نمونه ای از استفاده از ویژگی caption-side
عنوان بالای جدول
نام | قیمت |
ماهی | 350 روبل |
گوشت | 250 روبل |
عنوان زیر میز
نام | قیمت |
ماهی | 350 روبل |
گوشت | 250 روبل |
در این مثال ما ایجاد کرده ایم دو کلاس، که مکان هدر جدول را کنترل می کند. کلاس اول ( .topCaption) هدر جدول را بالای آن قرار می دهد، آن را روی جدول اول و کلاس دوم اعمال کردیم ( .bottomCaption) هدر جدول را در زیر آن قرار می دهد، ما آن را در جدول دوم اعمال کرده ایم. کلاس .topCaptionبه طور پیش فرض روی ویژگی سمت عنوان تنظیم شده است و برای اهداف نمایشی ایجاد شده است.
نتیجه مثال ما:
تراز افقی و عمودی
در بیشتر موارد هنگام کار با جداول، باید تراز محتوا را در سلولهای هدر و داده تنظیم کنید. ویژگی text-align برای تراز افقی، مشابه هر مورد استفاده می شود اطلاعات متنی. ما قبلاً در مقاله "" استفاده از این ویژگی را برای متن در نظر گرفتیم.
برای تنظیم تراز برای محتوا در سلول ها، باید از کلمات کلیدی خاصی با ویژگی text-align استفاده کنید. Application را در نظر بگیرید کلید واژه هااین ویژگی در مثال زیر
نمونه ای از تراز افقی در جدول
معنی | شرح |
ترک کرد | متن سلول را در سمت چپ تراز می کند. این مقدار پیش فرض است (اگر جهت متن از چپ به راست باشد). |
درست | متن سلول را به سمت راست تراز می کند. این مقدار پیش فرض است (اگر جهت متن از راست به چپ باشد). |
مرکز | متن سلول را با مرکز تراز می کند. |
توجیه | خطوط را به گونه ای امتداد می دهد که هر خط با عرض یکسان باشد (متن سلول را متناسب با عرض امتداد می دهد). |
در این مثال ما ایجاد کرده ایم چهار کلاس، که ترازهای افقی مختلف را در سلول ها تنظیم می کند و آنها را به ترتیب در ردیف های جدول اعمال می کند. مقدار موجود در سلول با مقدار ویژگی text-align مطابقت دارد
نتیجه مثال ما:
علاوه بر تراز افقی، می توانید با استفاده از ویژگی vertical-align، تراز عمودی را در سلول های جدول نیز تعریف کنید.
لطفاً توجه داشته باشید که هنگام کار با سلول های جدول، فقط مقادیر * زیر این ویژگی اعمال می شود:
*
- مقادیر زیر، فوق العاده، متن بالا، متن پایین، طول و درصد اعمال شده در سلول جدول به گونه ای رفتار خواهند کرد که گویی از یک مقدار پایه استفاده می کنند.
بیایید مثالی از استفاده را در نظر بگیریم:
نمونه ای از تراز عمودی در جدول
معنی | شرح |
خط پایه | خط پایه سلول را با خط پایه والد تراز می کند. این مقدار پیش فرض است. |
بالا | محتویات سلول را به صورت عمودی با بالا تراز می کند. |
وسط | محتویات سلول را به صورت عمودی در وسط تراز می کند. |
پایین | محتویات سلول را به صورت عمودی با پایین تراز می کند. |
در این مثال ما ایجاد کرده ایم چهار کلاس، که ترازهای عمودی مختلف را در سلول ها تنظیم می کند و آنها را برای ردیف های جدول اعمال می کند. مقدار موجود در سلول با مقدار ویژگی vertical-align که به آن سطر اعمال شد مطابقت دارد.
الگوریتم قرار دادن طرح جدول توسط مرورگر
CSS به طور پیش فرض از الگوریتم جدول بندی خودکار مرورگر استفاده می کند. در این مورد عرض ستون با وسیع ترین محتوای بدون شکست سلول تنظیم می شود. این الگوریتم ممکن است در برخی موارد کند باشد، زیرا مرورگر باید تمام محتوای جدول را قبل از تعیین طرح نهایی آن بخواند.
برای تغییر نوع طرح بندی جدول توسط مرورگر با خودکاربر روی درست شد، باید از ویژگی CSS table-layout با مقدار fixed استفاده کنید.
در این مورد، قرار دادن افقی فقط بستگی دارد بر روی عرض جدول و عرض ستون ها، نه بر روی محتوای سلول ها.مرورگر به محض دریافت ردیف اول شروع به ارائه جدول می کند. در نتیجه، الگوریتم ثابت به شما امکان می دهد طرح بندی چنین جدولی را سریعتر از استفاده از گزینه خودکار ایجاد کنید. هنگام کار با جداول بزرگ، می توانید از یک الگوریتم ثابت برای افزایش کارایی استفاده کنید.
بیایید با مثال زیر به استفاده از این ویژگی نگاه کنیم:
نمونه ای از استفاده از ویژگی table-layout
جدول بندی: خودکار;
نام |
2009 |
2010 |
2011 |
2012 |
2013 |
2014 |
2015 |
2016 |
گندم |
125 |
215 |
2540 |
33287 |
695878 |
1222222 |
125840000 |
125 |
جدول بندی: ثابت.
نام |
2009 |
2010 |
2011 |
2012 |
2013 |
2014 |
2015 |
2016 |
گندم |
125 |
215 |
2540 |
33287 |
695878 |
1222222 |
125840000 |
125 |
در این مثال ما:
استایل بندی ردیف ها و ستون های جدول
من و شما قبلاً در مقاله "" به طور جزئی روش های استایل بندی ردیف ها و ستون های جدول را لمس کرده ایم. در این مقاله، ما استفاده از یک شبه کلاس گروهی را بررسی کردیم که به شما امکان میدهد سبکهای ردیف را در جداول با استفاده از مقادیر به هم متصل کنید. زوج (صادقانه) و فرد (فرد) یا به صورت ابتدایی فرمول ریاضی.
بیایید تکنیکهایی را که تاکنون پوشش دادهایم مرور کنیم و راههای جدیدی برای استایل دادن به ردیفها و ستونها در جداول را بررسی کنیم. بیایید به سراغ مثال ها برویم.
نمونه ای از استفاده از شبه کلاس :nth-child با جداول
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
2 | | | | | | |
| | | | | | |
3 | | | | | | |
| | | | | | |
4 | | | | | | |
| | | | | | |
در این مثال ما:
نتیجه مثال ما:
بیایید به مثال بعدی برویم، که در آن گزینه هایی را برای یک ظاهر طراحی ردیف های جدول در نظر خواهیم گرفت.
نمونه ای از استایل بندی ردیف ها در جداول
سرویس | قیمت |
مجموع |
15 000 |
1 |
1 000 |
2 |
2 000 |
3 |
3 000 |
4 |
4 000 |
5 |
5 000 |
در این مثال ما:
- عرض جدول را روی 100٪ عرض عنصر والد قرار می دهیم، برای هدر و سلول های داده یک حاشیه جامد به عرض 1 پیکسل تعیین می کنیم.
- تنظیم برای عنصر ("پانویس" جدول) رنگ پس زمینه - مرجان، برای عنصر ("سرصفحه" جدول) رنگ پس زمینه را تنظیم کنید نقره.
- برای عناصر
، که در داخل عنصر قرار دارند (بدنه جدول) رنگ پس زمینه را برای تغییر در شناور تنظیم کنید (شبه کلاس :hover) c سفیددر هر رنگ خاکی(کل خط برجسته شده است).
نتیجه مثال ما: برنج. 153 نمونه ای از استایل بندی ردیف ها در جداول مثال زیر به اعمال گرد کردن گوشه در سلولهای جدول (ویژگی) میپردازد.
نمونه گرد کردن گوشه سلول
در این مثال ما:
- جدول را با حاشیه های بیرونی در مرکز قرار دهید، عرض و ارتفاع سلول های سرصفحه را روی 50 پیکسل تنظیم کنید، مشخص شده است. شفافحاشیه 5 پیکسل
- متوجه شدیم که وقتی (شبه کلاس :hover) روی سلول سرصفحه شناور میکنید، نشان میدهد پس زمینه آبیرنگ ها، نارنجیرنگ متن، حاشیه نارنجیرنگ 5 پیکسل و شعاع گرد 100٪.
- حاشیه شفافبرای رزرو مکانی برای مرز ضروری است که در شناور نمایش داده می شود، اگر این کار انجام نشود، جدول "پرش" می کند.
نتیجه مثال ما:
مثال زیر مربوط می شود با استفاده از HTMLعناصر و و استایل آنها
مثال برجسته ستون جدول
شماره برنامه | سرویس | قیمت، مالش. | جمع |
1 | آواز خواندن |
6 000 |
6 000 |
2 | شستشو |
2 000 |
2 000 |
3 | تمیز کردن |
1 000 |
1 000 |
4 | آزار دهنده |
1 500 |
1 500 |
5 | خواندن |
3 000 |
3 000 |
در این مثال ما:
نتیجه مثال ما:
و مثال آخر، که درک آن بسیار دشوار است و به دانش پیشرفته CSS نیاز دارد، زیرا به موضوعات آینده برنامه ریزی شده برای مطالعه دقیق در این دوره می پردازد.
در مثال قبلی متوجه شدیم که عنصر HTML شما میتوانید فقط یک ویژگی CSS را اعمال کنید - رنگ پسزمینه (رنگ پسزمینه)، اما نمیتوانید رنگ پسزمینه را هنگام شناور کردن مستقیم (شبه کلاس:hover) روی این عنصر تنظیم کنید. در این مثال، ما به نحوه برجسته کردن یک ستون جدول فقط با استفاده از CSS خواهیم پرداخت.
نمونه ای از برجسته کردن ستون ها و ردیف های جدول در حالت شناور
شماره برنامه | سرویس | قیمت، مالش. | جمع |
1 | آواز خواندن |
6 000 |
6 000 |
2 | شستشو |
2 000 |
2 000 |
3 | تمیز کردن |
1 000 |
1 000 |
4 | آزار دهنده |
1 500 |
1 500 |
5 | خواندن |
3 000 |
3 000 |
در این مثال ما:
|