10/10/2018, 10:41

[help] css div float dàn sản phẩm

mình viết đoạn code sau
<html>
<body>
<style>
div#lon
{
width:600px;
height:50px;
background:blue;
}
div#nho
{
background:#ececec;
color:red;
font-weight:bold;
width:170px;
float:left
}
</style>
<div id="lon">
<center>
<div id="nho"> san pham 1</div>
<div id="nho"> san pham 2</div>
<div id="nho"> san pham 3</div>
<div style="clear:left">
</center>
</div>

</body>
</html>

nhưng canh giữa 3 sản phẩm trong cái div có id là "lon" hoài không dc , bác nào bít cái này giúp với
jdkhang viết 12:50 ngày 10/10/2018
Cái này cơ bản mà bạn.
Bạn nhầm khái niệm idclass trong html và css.
Trong html mỗi đối tượng chỉ có 1 id và là duy nhất. Còn class gồm nhiều đối tượng chung 1 số thuộc tính nào đó.
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <title>Học CSS thật dễ</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<style type="text/css">
		div#lon
		{
			width:600px;
			height:50px;
			background:blue;
		}
		div.nho
		{
			background:#ececec;
			color:red;
			font-weight:bold;
			width:170px;
			height:50px;
			float:left;
			text-align: center;
		}
	</style>
  </head>
  <body>
    <div id="lon">	
		<div class="nho"> san pham 1</div>
		<div class="nho"> san pham 2</div>
		<div class="nho"> san pham 3</div>
	</div>
  </body>
</html>
imchicken viết 12:47 ngày 10/10/2018
Chắc bạn chưa hình dung trong khi làm việc với div
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <title>H?c CSS th?t d?</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<style type="text/css">
		div#lon
		{
			width:600px;
			height:50px;
			background:blue;
		}
		div.nho
		{
			background:#ececec;
			color:red;
			font-weight:bold;
			width:170px;
			height:50px;
			float:left;
			margin-right: 45px;
		}
		div.nho.last{
			margin: 0;
		}
	</style>
  </head>
  <body>
    <div id="lon">	
		<div class="nho"> san pham 1</div>
		<div class="nho"> san pham 2</div>
		<div class="nho last"> san pham 3</div>
	</div>
  </body>
</html>
dokhacluan viết 12:49 ngày 10/10/2018
code của 2 bác điều không chạy dc , có bạn nào bít cái này không giúp vói
@imchicken : ông là lâm trong list yahoo của tui phải hong
1024KB viết 12:47 ngày 10/10/2018
Thế nào gọi là không chạy. code trên như thế là ok rồi còn gì.
Giải thích phần không chạy coi.
dokhacluan viết 12:42 ngày 10/10/2018
nếu dùng table thì làm thế này
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>H?c CSS th?t d?</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<table border="1" width="600px" height="50px" bgcolor="blue">
<tr>
<td>
<center>
<table>
<tr>
<td width="170px" bgcolor="#ececec">san pham 1</td>
<td width="170px" bgcolor="#ececec">san pham 2</td>
<td width="170px" bgcolor="#ececec">san pham 3</td>
</tr>
</table>
</center>
</td>
</tr>
</table>
</body>
</html>
bay h không làm table mà làm bằng div
maicon viết 12:42 ngày 10/10/2018
Thứ 1 : ko được xài 2 lần cùng 1 id trong page
Thứ 2 : ko nên dùng tag center
Thứ 3 : Bạn đã cho width của div trong và div ngoài nên mình đưa ra 2 cách giải quyết :
Cách 1 : cho padding trái phải của div ngoài; hay cho padding-left thôi cũng được rồi
Cách 2 : Viết javascript : Thêm vào thuộc tính margin-left cho các phần tử div trong có thứ tự ((n%3)==1)

Còn cách khác nữa thì chưa bít
jdkhang viết 12:48 ngày 10/10/2018
Này thì Học CSS thật dễ
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <title>Học CSS thật dễ</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<style type="text/css">
		div#lon
		{
			width:600px;
			height:50px;
			background:none repeat scroll 0 0 blue;
		}
		div.nho
		{
			background:none repeat scroll 0 0 #ECECEC;
			color:red;
			font-weight:bold;
			width:170px;
			height:40px;			
			text-align: center;						
			border-right: 1px solid blue;
			display: table-cell; vertical-align: middle;			
		}
			
	</style>
  </head>
  <body>
    <div id="lon">	
		<div style="height: 5px; width: 100%; clear: both;"></div>
		<div style="display: table-cell; width: 40px;"></div>
		<div class="nho"> san pham 1</div>
		<div class="nho"> san pham 2</div>
		<div class="nho"> san pham 3</div>
  </body>
</html>
bvnguyen viết 12:53 ngày 10/10/2018
những cái div nhỏ bạn phải dùng class nhé, dùng thuộc tính text-align: center để định nó vào giữa
maicon viết 12:54 ngày 10/10/2018
Được gửi bởi jdkhang
Này thì Học CSS thật dễ
==! dễ quá nên bạn viết nhầm hả, table-cell ko support trong ie kể cả ie8, mà đây là float sản phẩm, bạn thử tăng số lượng div class nho lên xem chuyện gì xảy ra nha

<div style="display: table-cell; width: 40px;"></div> <- bó tay, ko nên viết inline style đặc biệt là ko được thêm div thừa vào.

Được gửi bởi bvnguyen
những cái div nhỏ bạn phải dùng class nhé, dùng thuộc tính text-align: center để định nó vào giữa
text-align ko có tác dụng đối với div con, đặc biệt là các thành phần con có thuộc tính float:left

Bài liên quan
0