private string CssAdd(Style s, ReportLink rl, Row row, bool bForceRelative, float h, float w)
		{
			string css;
			string prefix = CssPrefix(s, rl);
			if (_Asp && prefix == "table#")
				bForceRelative = true;

			if (s != null)
				css = prefix + "{" + CssPosition(rl, row, bForceRelative, h, w) + s.GetCSS(this.r, row, true) + "}";
			else if (rl is Table || rl is Matrix)
				css = prefix + "{" + CssPosition(rl, row, bForceRelative, h, w) + "border-collapse:collapse;}";
			else
				css = prefix + "{" + CssPosition(rl, row, bForceRelative, h, w) + "}";

			CssCacheEntry2 cce = (CssCacheEntry2) _styles[css];
			if (cce == null)
			{
				string name = prefix + this.Prefix + "css" + cssId++.ToString();
				cce = new CssCacheEntry2(css, name);
				_styles.Add(cce.Css, cce);
			}

			int i = cce.Name.IndexOf('#');
			if (i > 0)
				return cce.Name.Substring(i+1);
			else
				return cce.Name;
		}