ฉันแน่ใจว่าเคยถามปัญหานี้มาก่อน แต่ดูเหมือนจะหาคำตอบไม่ได้
ฉันมีมาร์กอัปต่อไปนี้:
<div id="foo">
<div id="bar">
here be dragons
</div>
</div>
ความปรารถนาของฉันคือทำให้ foo มีความกว้างของ600px( width: 600px;) และทำให้บาร์มีพฤติกรรมดังต่อไปนี้:
padding-left: 2px;
padding-right: 2px;
margin-left: 2px;
margin-right: 2px;
outerWidth: 100%;
ในคำอื่น ๆ แทนการตั้งค่าความกว้างของแถบ592pxฉันต้องการที่จะกำหนดความกว้างของด้านนอกของบาร์เพื่อให้มีการคำนวณ100% 592pxความสำคัญตรงนี้คือฉันสามารถเปลี่ยนความกว้างของ foo เป็น800pxและแถบจะคำนวณเมื่อแสดงผลแทนที่จะต้องคำนวณทางคณิตศาสตร์สำหรับอินสแตนซ์ทั้งหมดเหล่านี้ด้วยตนเอง
เป็นไปได้ใน CSS บริสุทธิ์หรือไม่?
สนุกกับมันมากขึ้น:
- ถ้า
#barเป็นตารางล่ะ? - ถ้า
#bartextarea คืออะไร? ถ้า
#barอินพุตคืออะไร?เกิดอะไรขึ้นถ้า
#fooเซลล์ตาราง (td)? (สิ่งนี้เปลี่ยนปัญหาหรือปัญหาเหมือนกันหรือไม่)
จนถึงขณะtable#barนี้input#barมีการพูดคุยกัน ฉันไม่เห็นทางออกที่ดีสำหรับ textarea # bar ฉันคิดว่าพื้นที่ข้อความที่ไม่มีขอบ / ระยะขอบ / ช่องว่างภายในด้วยการdivห่ออาจใช้งานได้กับdivรูปแบบที่ใช้เป็นเส้นขอบสำหรับไฟล์textarea.